Delen via


.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/Sdkop 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.