SDK do .NET.NET Aspire
O SDK de .NET.NET Aspire destina-se a *.AppHost projetosque servem como o orquestrador .NET.NET Aspire. Esses projetos são designados usando a propriedade <IsAspireHost>true</IsAspireHost>
, além de especificar o Aspire.AppHost.Sdk
no arquivo de projeto. O SDK fornece um conjunto de recursos que simplificam o desenvolvimento de aplicativos .NET.NET Aspire.
Visão geral
O Aspire.AppHost.Sdk
é definido com um Project/Sdk
de nível superior:
<Project Sdk="Microsoft.NET.Sdk">
<Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net9.0</TargetFramework>
<IsAspireHost>true</IsAspireHost>
<!-- Omitted for brevity -->
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Aspire.Hosting.AppHost" Version="9.0.0" />
</ItemGroup>
<!-- Omitted for brevity -->
</Project>
O projeto de exemplo anterior define o SDK de nível superior como Microsoft.NET.Sdk
e o Aspire.AppHost.Sdk
como um SDK aditivo. A propriedade IsAspireHost
está definida como true
para indicar que esse projeto é um host de aplicativo .NET.NET Aspire. O projeto também faz referência ao pacote Aspire.Hosting.AppHost
, que incorpora várias dependências relacionadas a Aspire.
Recursos do SDK
O SDK do .NET.NET Aspire fornece vários recursos importantes.
Referências de projeto
Cada ProjectReference
no aplicativo de host do projeto .NET.NET Aspire não é tratado como uma referência de projeto padrão. Em vez disso, eles permitem que o host do aplicativo execute esses projetos como parte de sua orquestração. Cada referência de projeto dispara um gerador para criar um class
que representa o projeto como um IProjectMetadata. Esses metadados são usados para preencher os projetos nomeados no namespace de Projects
gerado. Quando você chama a API Aspire.Hosting.ProjectResourceBuilderExtensions.AddProject, o namespace Projects
é usado para referenciar o projeto, passando a classe gerada como um parâmetro de tipo genérico.
Dica
Se você precisar referenciar um projeto da maneira transdicional dentro do host do aplicativo, defina o atributo IsAspireProjectResource
no elemento ProjectReference
para false
, conforme mostrado no exemplo a seguir:
<ProjectReference Include="..\MyProject\MyProject.csproj" IsAspireProjectResource="false" />
Dependências do orquestrador
O SDK do .NET.NET Aspire adiciona dinamicamente referências ao painel de controle .NET.NET Aspire e a outras dependências do host do aplicativo, como os pacotes do plano de controle do desenvolvedor (DCP). Essas dependências são específicas para a plataforma na qual o host do aplicativo é criado.
Quando o projeto de host do aplicativo é executado, o orquestrador depende dessas dependências para fornecer a funcionalidade necessária ao host do aplicativo. Para obter mais informações, consulte .NET.NET Aspire visão geral da orquestração.