.NET .NET Aspire SDK
L'SDK di .NET.NET Aspire è destinato ai progetti *.AppHost, che fungono da orchestratore .NET.NET Aspire. Questi progetti vengono designati usando la proprietà <IsAspireHost>true</IsAspireHost>
e specificando il Aspire.AppHost.Sdk
nel file di progetto. L'SDK offre un set di funzionalità che semplificano lo sviluppo di app .NET.NET Aspire.
Panoramica
Oggetto Aspire.AppHost.Sdk
viene definito con un Project/Sdk
di primo livello:
<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>
Il progetto di esempio precedente definisce l'SDK di primo livello come Microsoft.NET.Sdk
e il Aspire.AppHost.Sdk
come SDK aggiuntivo. La proprietà IsAspireHost
è impostata su true
per indicare che questo progetto è un host dell'app .NET.NET Aspire. Il progetto fa anche riferimento al pacchetto Aspire.Hosting.AppHost
, che introduce una serie di dipendenze correlate a Aspire.
Funzionalità dell'SDK
L'SDK di .NET.NET Aspire offre diverse funzionalità chiave.
Riferimenti al progetto
Ogni ProjectReference
nell'host dell'app nel progetto .NET.NET Aspire non viene considerato come riferimenti standard di progetto. Consentono invece all'host dell'app di eseguire questi progetti come parte della sua orchestrazione. Ogni riferimento al progetto attiva un generatore per creare un class
che rappresenta il progetto come un IProjectMetadata. Questi metadati vengono usati per popolare i progetti denominati nello spazio dei nomi Projects
generato. Quando si chiama l'API Aspire.Hosting.ProjectResourceBuilderExtensions.AddProject, lo spazio dei nomi Projects
viene usato per fare riferimento al progetto, passando la classe generata come parametro di tipo generico.
Mancia
Se devi fare riferimento a un progetto nel modo tradizionale all'interno dell'host dell'app, imposta l'attributo IsAspireProjectResource
sull'elemento ProjectReference
su false
, come illustrato nell'esempio seguente.
<ProjectReference Include="..\MyProject\MyProject.csproj" IsAspireProjectResource="false" />
Dipendenze di Orchestrator
L'SDK di .NET.NET Aspire aggiunge dinamicamente i riferimenti al dashboard .NET.NET Aspire e ad altre dipendenze dell'host dell'app, ad esempio i pacchetti DCP (Developer Control Plane). Queste dipendenze sono specifiche della piattaforma su cui si basa l'host dell'app.
Quando viene eseguito il progetto host dell'app, l'agente di orchestrazione si basa su queste dipendenze per fornire le funzionalità necessarie all'host dell'app. Per altre informazioni, vedere panoramica dell'orchestrazione .NET.NET Aspire.