.NET .NET Aspire SDK
.NET
.NET Aspire SDK는 *.AppHost 프로젝트를 위해 의도된 것입니다. 이는 .NET.NET Aspire 오케스트레이터로서의 역할을 합니다. 이러한 프로젝트는 프로젝트 파일에서 Aspire.AppHost.Sdk
을 지정하는 것 외에도 <IsAspireHost>true</IsAspireHost>
속성을 사용하여 지정됩니다. SDK는 .NET.NET Aspire 앱 개발을 간소화하는 기능 집합을 제공합니다.
개요
📦
Aspire.AppHost.Sdk는 MSBuild 프로젝트 SDK로, .NET.NET Aspire 앱을 빌드하기 위한 추가적 기능을 제공합니다.
Aspire.AppHost.Sdk
는 최상위 Project/Sdk
에 의해 정의됩니다.
<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>
앞의 예제 프로젝트는 최상위 SDK를 Microsoft.NET.Sdk
정의하고 Aspire.AppHost.Sdk
추가 SDK로 정의합니다.
IsAspireHost
속성은 이 프로젝트가 .NET.NET Aspire 앱 호스트임을 나타내기 위해 true
로 설정됩니다. 또한 이 프로젝트는 여러 Aspire관련 종속성을 가져오는 Aspire.Hosting.AppHost
패키지를 참조합니다.
SDK 기능
.NET .NET Aspire SDK는 몇 가지 주요 기능을 제공합니다.
프로젝트 참조
.NET
.NET Aspire 앱 호스트 프로젝트의 각 ProjectReference
표준 프로젝트 참조로 처리되지 않습니다. 대신, 앱 호스트이 이러한 프로젝트를 오케스트레이션의 일환으로 실행할 수 있도록 합니다. 각 프로젝트 참조는 생성기를 작동시켜 프로젝트를 IProjectMetadata로 나타내는 class
를 만듭니다. 이 메타데이터는 생성된 Projects
네임스페이스에서 명명된 프로젝트를 채우는 데 사용됩니다.
Aspire.Hosting.ProjectResourceBuilderExtensions.AddProject API를 호출할 때 Projects
네임스페이스는 생성된 클래스를 제네릭 형식 매개 변수로 전달하는 프로젝트를 참조하는 데 사용됩니다.
팁
앱 호스트 내에서 전통적인 방식으로 프로젝트를 참조해야 하는 경우, 다음 예제와 같이 ProjectReference
요소의 IsAspireProjectResource
특성을 false
로 설정하세요.
<ProjectReference Include="..\MyProject\MyProject.csproj" IsAspireProjectResource="false" />
오케스트레이터 종속성
.NET .NET Aspire SDK는 .NET.NET Aspire 대시보드 및 DCP(개발자 컨트롤 플레인) 패키지와 같은 다른 앱 호스트 종속성에 대한 참조를 동적으로 추가합니다. 이러한 종속성은 앱 호스트가 빌드되는 플랫폼과 관련이 있습니다.
앱 호스트 프로젝트가 실행되면 오케스트레이터는 이러한 종속성을 사용하여 앱 호스트에 필요한 기능을 제공합니다. 자세한 내용은 .NET.NET Aspire 오케스트레이션 개요참조하세요.
.NET Aspire