Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Пакет Aspire SDK предназначен для проектов *.AppHost, которые служат оркестратором Aspire. Эти проекты определяются их использованием Aspire.AppHost.Sdk в файле проекта. Пакет SDK предоставляет набор функций, упрощающих разработку приложений Aspire .
Обзор
.📦Aspire AppHost.Sdk — это аддитивный пакет SDK проекта MSBuild для создания Aspire приложений.
Aspire.AppHost.Sdk определяется как элемент верхнего уровня Project/Sdk:
<Project Sdk="Microsoft.NET.Sdk">
<Sdk Name="Aspire.AppHost.Sdk" Version="9.5.2" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net9.0</TargetFramework>
<!-- Omitted for brevity -->
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Aspire.Hosting.AppHost" Version="9.5.2" />
</ItemGroup>
<!-- Omitted for brevity -->
</Project>
Предыдущий пример проекта определяет пакет SDK верхнего уровня как Microsoft.NET.Sdk и Aspire.AppHost.Sdk в качестве аддитивного пакета SDK. Проект также ссылается на пакет Aspire.Hosting.AppHost, который содержит ряд зависимостей, связанных с Aspire.
Функции пакета SDK
Пакет Aspire SDK предоставляет несколько ключевых функций.
Ссылки на проекты
Каждый ProjectReference в проекте Aspire AppHost не рассматривается как стандартные ссылки на проект. Вместо этого они позволяют AppHost выполнять эти проекты в рамках оркестрации. Каждая ссылка на проект активирует генератор для создания class, представляющего проект в виде IProjectMetadata. Эти метаданные используются для распределения именованных проектов в сгенерированном пространстве имен Projects. При вызове API Aspire.Hosting.ProjectResourceBuilderExtensions.AddProject пространство имен Projects используется для ссылки на проект — передачу созданного класса в качестве параметра универсального типа.
Tip
Если вам нужно ссылаться на проект в традиционном режиме в AppHost, задайте IsAspireProjectResource для элемента ProjectReferenceатрибутfalse, как показано в следующем примере:
<ProjectReference Include="..\MyProject\MyProject.csproj" IsAspireProjectResource="false" />
В противном случае он обрабатывается по умолчанию как ProjectReference ресурс проекта Aspire.
Зависимости оркестратора
Пакет Aspire SDK динамически добавляет ссылки на Aspire панель мониторинга и другие зависимости AppHost, такие как пакеты уровня управления разработчика (DCP). Эти зависимости зависят от платформы, на которую основан AppHost.
При запуске проекта AppHost оркестратор зависит от этих зависимостей, чтобы предоставить необходимые функциональные возможности AppHost. Дополнительные сведения см. в обзореAspire оркестрации.