.NET .NET Aspire SDK
De .NET.NET Aspire SDK is bedoeld voor *.AppHost projecten, die als orchestrator fungeren voor de .NET.NET Aspire orchestrator. Deze projecten worden aangewezen met behulp van de eigenschap <IsAspireHost>true</IsAspireHost>
, evenals het opgeven van de Aspire.AppHost.Sdk
in het projectbestand. De SDK biedt een set functies waarmee de ontwikkeling van .NET.NET Aspire-apps wordt vereenvoudigd.
Overzicht
De 📦Aspire. AppHost.Sdk is een additief MSBuild project SDK voor het bouwen van .NET.NET Aspire apps. De Aspire.AppHost.Sdk
wordt gedefinieerd met een Project/Sdk
op het hoogste niveau:
<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>
In het voorgaande voorbeeldproject wordt de SDK op het hoogste niveau gedefinieerd als Microsoft.NET.Sdk
en de Aspire.AppHost.Sdk
als additief SDK. De eigenschap IsAspireHost
is ingesteld op true
om aan te geven dat dit project een .NET.NET Aspire app-host is. Het project verwijst ook naar het Aspire.Hosting.AppHost
-pakket dat een aantal Aspire-gerelateerde afhankelijkheden bevat.
SDK functies
De .NET.NET Aspire SDK biedt verschillende belangrijke functies.
Projectverwijzingen
Elke ProjectReference
in het .NET.NET Aspire app-hostproject wordt niet behandeld als standaard projectverwijzingen. In plaats daarvan stellen ze de app-host in staat om deze projecten uit te voeren als onderdeel van zijn orkestratie. Elke projectreferentie activeert een generator om een class
te maken die het project vertegenwoordigt als een IProjectMetadata. Deze metagegevens worden gebruikt voor het vullen van de benoemde projecten in de gegenereerde Projects
naamruimte. Wanneer u de Aspire.Hosting.ProjectResourceBuilderExtensions.AddProject-API aanroept, wordt de Projects
-naamruimte gebruikt om te verwijzen naar het project, waarbij de gegenereerde klasse wordt doorgegeven als een algemene parameter.
Tip
Als u wilt verwijzen naar een project op de tranditionale manier binnen de app-host, stelt u het kenmerk IsAspireProjectResource
op het ProjectReference
element in op false
, zoals wordt weergegeven in het volgende voorbeeld:
<ProjectReference Include="..\MyProject\MyProject.csproj" IsAspireProjectResource="false" />
Orchestrator-afhankelijkheden
De .NET.NET Aspire SDK voegt dynamisch verwijzingen toe naar het .NET.NET Aspire dashboard en andere app-hostafhankelijkheden, zoals de DCP-pakketten (Developer Control Plane). Deze afhankelijkheden zijn specifiek voor het platform waarop de app-host is gebouwd.
Wanneer het app-hostproject wordt uitgevoerd, is de orchestrator afhankelijk van deze afhankelijkheden om de benodigde functionaliteit voor de app-host te bieden. Zie .NET.NET Aspire orkestratieoverzichtvoor meer informatie.