.NET .NET Aspire SDK
SDK:t för .NET.NET Aspire är avsett för *.AppHost projekt, som fungerar som .NET.NET Aspire orkestrerare. Dessa projekt utses med hjälp av egenskapen <IsAspireHost>true</IsAspireHost>
samt anger Aspire.AppHost.Sdk
i projektfilen. SDK innehåller en uppsättning funktioner som förenklar utvecklingen av .NET.NET Aspire appar.
Överblick
Den 📦Aspire. AppHost.Sdk är en additiv MSBuild-projekt-SDK för att skapa .NET.NET Aspire appar.
Aspire.AppHost.Sdk
definieras med en Project/Sdk
på den översta nivån:
<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>
Föregående exempelprojekt definierar SDK på den översta nivån som Microsoft.NET.Sdk
och Aspire.AppHost.Sdk
som en additiv SDK. Egenskapen IsAspireHost
är inställd på true
för att indikera att projektet är en .NET.NET Aspire appvärd. Projektet refererar också till Aspire.Hosting.AppHost
-paketet som innehåller ett antal Aspire-relaterade beroenden.
SDK-funktioner
.NET .NET Aspire SDK innehåller flera viktiga funktioner.
Projektreferenser
Varje ProjectReference
i .NET.NET Aspire värdapplikation-projekt behandlas inte som standardprojektreferenser. I stället möjliggör de för appvärd att köra dessa projekt som en del av sin orkestrering. Varje projektreferens utlöser en generator för att skapa en class
som representerar projektet som en IProjectMetadata. Dessa metadata används för att fylla i de namngivna projekten i det genererade Projects
namnområdet. När du anropar Aspire.Hosting.ProjectResourceBuilderExtensions.AddProject-API:et används Projects
namnområde för att referera till projektet – och skickar den genererade klassen som en parameter av generisk typ.
Tips
Om du behöver referera till ett projekt på ett transditionellt sätt i appvärden anger du attributet IsAspireProjectResource
på ProjectReference
-elementet till false
, som du ser i följande exempel:
<ProjectReference Include="..\MyProject\MyProject.csproj" IsAspireProjectResource="false" />
Orchestrator-beroenden
.NET .NET Aspire SDK lägger dynamiskt till referenser till .NET.NET Aspire instrumentpanel och andra appvärdberoenden, till exempel DCP-paket (Developer Control Plane). Dessa beroenden är specifika för den plattform som appvärden bygger på.
När appvärdprojektet körs förlitar sig orkestratorn på dessa beroenden för att tillhandahålla nödvändiga funktioner till appvärden. För mer information, se .NET.NET Aspire orkestreringsöversikt.
.NET Aspire