Aracılığıyla paylaş


.NET .NET Aspire 9.0'a yükseltme

.NET .NET Aspire 9.0 genel kullanıma sunuldu. Bu makalede, mevcut .NET Aspire 8.x projelerinizi .NET Aspire 9.0'a güncelleştirme adımlarını öğreneceksiniz. Projelerinizi .NET.NET Aspire 9.0'a güncelleştirmenin birkaç yolu vardır:

  • Projelerinizi el ile .NET.NET Aspire 9.0 sürümüne yükseltin.
  • Projelerinizi .NET 9.0'a yükseltmek için .NET Aspire kullanın.

Bahşiş

.NET .NET Aspireyeniyseniz, herhangi bir şeyi yükseltmeniz için bir neden yoktur. Daha fazla bilgi için bkz. .NET.NET Aspire kurulum ve araç.

Önkoşullar

Projelerinizi .NET.NET Aspire 9.0'a yükseltmeden önce aşağıdaki önkoşullara sahip olduğunuzdan emin olun:

Not

artık gerek duymadığınız için .NET.NET Aspire iş yükünü kaldırabilirsiniz.

dotnet workload uninstall aspire

Daha fazla bilgi için bkz. dotnet iş yükünü kaldırma.

.NET .NET Aspire iş yükünü kaldırmazsanız ve yeni .NET.NET Aspire SDK ve şablonlarını kullanıyorsanız hem .NET Aspire 8.0 hem de .NET Aspire 9.0 şablonlarını görürsünüz.

.NET .NET Aspire 9.0'a el ile yükseltme

Projelerinizi .NET.NET Aspire 9.0'a yükseltmek için proje dosyalarınızı güncelleştirmeniz gerekir. Aşağıdaki adımlar işlemde size yol gösterir:

  • Yeni .NET 9.0 SDK'sını (.NET Aspire) kullanmak için Aspire.AppHost.Sdk proje dosyanızı düzenleyin.
  • Proje dosyalarınızdaki NuGet paketlerini en son sürümlere güncelleştirin.
  • Program.cs dosyanızı yeni API'leri kullanacak şekilde ayarlayın ve eski API'leri kaldırın.

Uygulama ana bilgisayar proje dosyanızı düzenleme

Uygulama ana bilgisayar projenizi .NET.NET Aspire 9.0 sürümüne yükseltmek için proje dosyanızı yeni 📦Aspirekullanacak şekilde güncelleştirmeniz gerekir. AppHost.Sdk:

<Project Sdk="Microsoft.NET.Sdk">

+  <Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <IsAspireHost>true</IsAspireHost>
    <UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Aspire.Hosting.AppHost" Version="8.0.0" />
  </ItemGroup>

</Project>

İsteğe bağlı olarak hedef çerçeve adını (TFM) yükseltin

.NET Aspire 9.0, .NET 9.0 üzerinde çalışır, ancak .NET 8.0'da da çalıştırabilirsiniz. Başka bir deyişle, .NET Aspire SDK'sını kullanıyor ve sürüm 9.0 paketlerini işaret ediyor olsanız bile, hala 8.0 .NET'i hedefleyebilirsiniz. .NET Aspire 9.0 projenizi .NET 9.0 üzerinde çalıştırmak istiyorsanız, proje dosyanızdaki TargetFramework özelliğini güncelleştirmeniz gerekir:

<Project Sdk="Microsoft.NET.Sdk">

  <Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />

  <PropertyGroup>
    <OutputType>Exe</OutputType>
-   <TargetFramework>net8.0</TargetFramework>
+   <TargetFramework>net9.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <IsAspireHost>true</IsAspireHost>
    <UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Aspire.Hosting.AppHost" Version="9.1.0" />
  </ItemGroup>

</Project>

TFM'ler hakkında daha fazla bilgi için bkz. SDK stili projelerde hedef çerçeveler : En son sürümler.

Genel olarak uygulama barındırıcı proje farklılıkları

Önceki adımların tümünü izlediyseniz, uygulama ana bilgisayar proje dosyanız şu şekilde görünmelidir:

<Project Sdk="Microsoft.NET.Sdk">

+  <Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />

  <PropertyGroup>
    <OutputType>Exe</OutputType>
-   <TargetFramework>net8.0</TargetFramework>
+   <TargetFramework>net9.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <IsAspireHost>true</IsAspireHost>
    <UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
-   <PackageReference Include="Aspire.Hosting.AppHost" Version="8.0.0" />
+   <PackageReference Include="Aspire.Hosting.AppHost" Version="9.1.0" />
  </ItemGroup>

</Project>

Değişiklikler arasında Aspire.AppHost.Sdkeklenmesi, TargetFramework özelliğinin net9.0olarak güncelleştirilip Aspire.Hosting.AppHost paketinin 9.0.0sürümüne güncelleştirilerek eklenmesi yer alır.

Program.cs dosyanızı ayarlama

9.0'ın kullanıma sunulmasıyla birlikte,bazı hataya neden olan değişiklikler vardır. Bazı API'ler başlangıçta deneysel (ExperimentalAttribute) olarak işaretlendi ve şimdi kaldırıldı, diğer API'ler ise yeni değiştirme API'leriyle ilgili ayrıntılarla ObsoleteAttribute olarak ilişkilendirildi. yeni API'leri kullanmak için Program.cs dosyanızı (ve diğer etkilenen API'leri) ayarlamanız gerekir. Projelerinizi yükseltmek için Yükseltme Yardımcısı'nı kullanıyorsanız, çoğu durumda Program.cs dosyanızı otomatik olarak ayarlar.

.NET .NET Aspire 9.0'daki önemli değişikliklerin tam listesini görmek için bkz. .NET.NET Aspire 9.0'deki önemli değişiklikler.

Yükseltme Yardımcısı'nı kullanma

Yükseltme Yardımcısı, hedeflenen projeleri en son sürüme yükseltmeye yardımcı olan bir araçtır. Yükseltme Yardımcısı'nı yeni kullanıyorsanız, aralarından seçim yapabileceğiniz iki modalite vardır:

Yükseltme Yardımcısı'nı nasıl yüklediğinizden bağımsız olarak, .NET Aspire 8.x projelerinizi .NET Aspire 9.0'a yükseltmek için kullanabilirsiniz.

.NET Aspire uygulama ana bilgisayar projesini .NET Aspireile Visual Studio 9.0'a yükseltmek için, Çözüm Gezgini'nde projeye sağ tıklayın ve Yükseltmeöğesini seçin.

Önemli

Yükseltme Yardımcısı henüz yüklü değilse yüklemeniz istenir.

Yükseltme Yardımcısı bir karşılama paketi görüntüler. Aspire yükseltmeleri seçeneğini seçin:

Visual Studio: .NET Aspire uygulama ana bilgisayar projesiyle Yükseltme Yardımcısı karşılama sayfası.

Aspire yükseltmeleri seçeneği belirlendikten sonra Yükseltme Yardımcısı seçilebilir yükseltme hedef bileşenlerini görüntüler. Tüm seçenekleri işaretli bırakın ve yükseltme seçiminiseçin:

Visual Studio: Yükseltme Yardımcısı, yükseltilebilir bileşenler .NET Aspire.

Son olarak, yükseltecek bileşenleri seçtikten sonra Yükseltme Yardımcısı yükseltme işleminin sonuçlarını görüntüler. Her şey başarılı olursa, her bileşenin yanında yeşil onay işaretleri görürsünüz:

Visual Studio: Yükseltme Yardımcısı .NET Aspire uygulama ana bilgisayar projesi başarıyla yükseltildi.

.NET .NET Aspire uygulama ana bilgisayar projesini yükseltmek için Yükseltme Yardımcısı CLI'sını yüklediğinizden emin olun. .NET .NET Aspire uygulama konağı proje dosyasının kök dizininde bir terminal oturumu açın ve aşağıdaki komutu çalıştırın:

upgrade-assistant upgrade

Çıkış etkileşimlidir ve yükseltme türünü seçmenizi bekler. Aspire yükseltmeleri seçeneğini belirleyin:

 Selected options
────────────────────────────────────────────────────────────────────────────────────
 Source project     ..\AspireSample\AspireSample.AppHost\AspireSample.AppHost.csproj

 Steps
────────────────────────────────
 Source project / Upgrade type
────────────────────────────────

How do you want to upgrade project AspireSample.AppHost?

> Aspire upgrades
    Upgrade to latest .NET Aspire version (aspire.latest)

  Upgrade project to a newer .NET version
    In-place project upgrade (framework.inplace)

  NuGet upgrades
    NuGet central package management (CPM) (nuget.cpm)

  Navigation
    Back
    Exit

klavyenizi kullanarak veya aşağı gidin ve Aspire yükseltmeler seçeneğini belirleyin. Yükseltme Yardımcısı son onayı ister. Yükseltmeye devam etmek için Y girin:

 Selected options
────────────────────────────────────────────────────────────────────────────────────
 Source project     ..\AspireSample\AspireSample.AppHost\AspireSample.AppHost.csproj
 Upgrade type       aspire.latest

 Steps
──────────────────────────────────────────
 Source project / Upgrade type / Upgrade
──────────────────────────────────────────

We have gathered all required options and are ready to do the upgrade. Do you want to continue? [y/n] (y):

Son olarak, yükseltme işlemi tamamlandıktan sonra Yükseltme Yardımcısı yükseltme işleminin sonuçlarını görüntüler:

Finalizing operation...
Complete: 3 succeeded, 0 failed, 7 skipped.

NuGet paketlerini güncelleştirme

.NET .NET Aspire çözümünüzdeki en son güncelleştirmelerden yararlanmak için tüm NuGet paketlerini 9.0.0sürümüne güncelleştirin.

Uygulama ana bilgisayar projenizi güncelleştirmek için aşağıdaki .NET CLI komutunu kullanarak Aspire.Hosting.AppHost paketini sürüm 9.0.0güncelleştirin:

dotnet add package Aspire.Hosting.AppHost --version 9.0.0

Bir paket başvurusu zaten mevcut olduğunda, dotnet add package komutu başvuruyu belirtilen sürüme güncelleştirir. Daha fazla bilgi için bkz. dotnet add package.

Uygulama ana bilgisayar projesi güncelleştirildi, proje dosyanız şu şekilde görünmelidir:

<Project Sdk="Microsoft.NET.Sdk">

  <Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <IsAspireHost>true</IsAspireHost>
    <UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
-   <PackageReference Include="Aspire.Hosting.AppHost" Version="8.0.0" />
+   <PackageReference Include="Aspire.Hosting.AppHost" Version="9.1.0" />
  </ItemGroup>

</Project>

Bahşiş

Diğer projelerinizdeki NuGet paketlerini de en son sürümlere güncelleştirmek isteyeceksiniz.

Yükseltmeyi doğrulama

Herhangi bir yükseltmede olduğu gibi, uygulamanın beklendiği gibi çalıştığından ve tüm testlerin geçtiğinden emin olun. Çözümü derleyin ve çıkış penceresinde öneriler, uyarılar veya hatalar arayın; daha önce sorun olmayan her şeyi giderin. Herhangi bir sorunla karşılaşırsanız, bir GitHub sorunbildirerek bize bildirin.