Aracılığıyla paylaş


.NET Yükseltme Yardımcısı'na genel bakış

.NET'in yeni sürümleri yıl boyunca yayınlanıyor ve yılda bir kez büyük bir sürüme sahip. .NET Yükseltme Yardımcısı.NET, .NET Core ve .NET Framework'ün önceki sürümlerindeki uygulamaları en son sürüme yükseltmenize yardımcı olur.

.NET Yükseltme Yardımcısı, uygulamaları .NET'in en son sürümüne yükseltmeye yardımcı olmak için tasarlanmış bir Visual Studio uzantısı ve komut satırı aracıdır.

.NET Yükseltme Yardımcısı ile ilgili sorunlar, Geri Bildirim>Gönder Sorun Bildir'i seçerek >Visual Studio'da dosyalanabilir.

Yükseltme Yardımcısı'nı yükleme

.NET Yükseltme Yardımcısı bir Visual Studio uzantısı veya .NET komut satırı aracı olarak yüklenebilir. Daha fazla bilgi için bkz . .NET Yükseltme Yardımcısı'nı yükleme.

Desteklenen diller

Aşağıdaki kod dilleri desteklenir:

  • C#
  • Visual Basic

Desteklenen projeler

Aşağıdaki proje türleri desteklenir:

  • ASP.NET
  • Azure İşlevleri
  • Windows Presentation Foundation
  • Windows Forms
  • Sınıf kitaplıkları
  • Konsol uygulamaları
  • .NET Native UWP
  • Xamarin Forms
  • .NET MAUI

Yükseltme yolları

Aşağıdaki yükseltme yolları desteklenmektedir:

  • .NET Framework'e .NET
  • .NET Core'da .NET'e
  • WinUI 3'e UWP
  • En son .NET sürümüne önceki .NET sürümü
  • Azure İşlevleri v1-v3 ile v4 arası yalıtılmış
  • Xamarin Forms to .NET MAUI
    • XAML dosya dönüştürmeleri yalnızca ad alanlarını yükseltmeyi destekler. Daha kapsamlı dönüştürmeler için Visual Studio 2022 sürüm 17.6 veya üzerini kullanın.

Visual Studio uzantısıyla yükseltme

.NET Yükseltme Yardımcısı uzantısını yükledikten sonra, Çözüm Gezgini penceresinde projeye sağ tıklayın ve Yükselt'i seçin.

Dikkat

Kaynak denetimi kullanmıyorsanız yükseltmeden önce projelerinizi yedeklediğinizden emin olun.

The .NET Upgrade Assistant's Upgrade menu item in Visual Studio.

Proje türünüz temelinde farklı yükseltme stilleri sağlayan bir sekme açılır:

  • Yerinde proje yükseltme

    Bu seçenek, kopya oluşturmadan projenizi yükselter.

  • Yan yana proje yükseltme

    Projenizi kopyalar ve kopyayı yükselterek özgün projenizi tek başına bırakır.

  • Yan yana artımlı

    Karmaşık web uygulamaları için iyi bir seçimdir. ASP.NET'den ASP.NET Core'a yükseltmek için biraz çalışma ve bazen el ile yeniden düzenleme gerekir. Bu mod var olan .NET Framework projenizin yanına bir .NET projesi koyar ve .NET projesinde uygulanan uç noktaları yönlendirirken diğer tüm çağrılar .NET Framework uygulamasına gönderilir.

    Bu mod, ASP.NET veya Kitaplık uygulamanızı parça parça yükseltmenizi sağlar.

Uygulamanız yükseltildikten sonra, yükseltmeyle ilişkili projenizle ilgili tüm yapıtları gösteren bir durum ekranı görüntülenir. Her yükseltme yapıtı, durum hakkında daha fazla bilgi okumak için genişletilebilir. Aşağıdaki listede durum simgeleri açıklanmaktadır:

  • Dolu yeşil onay işareti: Yapıt yükseltildi ve başarıyla tamamlandı.
  • Doldurulmamış yeşil onay işareti: Araç yükseltilen yapıtla ilgili hiçbir şey bulamadı.
  • Sarı uyarı işareti: Yapıt yükseltildi, ancak dikkate almanız gereken önemli bilgiler var.
  • Kırmızı X: Yapıt yükseltilecekti, ancak yükseltme başarısız oldu.

The .NET Upgrade Assistant's Upgrade results tab in Visual Studio.

Ayrıca, Yükseltme Yardımcısı'nın gerçekleştirdiği eylemler, aşağıdaki görüntüde gösterildiği gibi Yükseltme Yardımcısı kaynağının altındaki Çıkış penceresine günlüğe kaydedilir:

The output window in Visual Studio showing the results from the .NET Upgrade Assistant.

Projenizi yükselttikten sonra kapsamlı bir şekilde test etmeniz gerekir.

CLI aracıyla yükseltme

.NET Yükseltme Yardımcısı CLI aracını yükledikten sonra bir terminal penceresi açın ve yükseltmek istediğiniz projeyi içeren dizine gidin. CLI'nin upgrade-assistant --help sağladığı kullanılabilir seçenekleri görmek için komutunu kullanabilirsiniz.

Dikkat

Kaynak denetimi kullanmıyorsanız yükseltmeden önce projelerinizi yedeklediğinizden emin olun.

Aracı komutuyla upgrade-assistant upgrade çalıştırın; geçerli klasördeki ve altındaki tüm projeler listelenir. CLI aracı, yükseltecek projeyi seçmenin etkileşimli bir yolunu sağlar. Öğeyi seçmek için ok tuşlarını kullanın ve öğeyi çalıştırmak için Enter tuşuna basın. Yükseltmek istediğiniz projeyi seçin. Bu makale tarafından sağlanan örnekte, geçerli klasörün altında dört proje vardır:

 Selected options
───────────────────────────────────────────────────────────
 No options specified, follow steps below to continue

 Steps
─────────────────
 Source project
─────────────────

Which project do you want to upgrade (found 9)?

> MatchingGame (winforms\MatchingGame\MatchingGame.csproj)
  MatchingGame.Logic (winforms\MatchingGame.Logic\MatchingGame.Logic.csproj)
  StarVoteControl (csharp\StarVoteControl\StarVoteControl.csproj)
  WebSiteRatings (csharp\WebSiteRatings\WebSiteRatings.csproj)

  Navigation
    Exit

Yükselteceğiniz projeye bağlı olarak, yükseltmenin nasıl devam etmesi gerektiğini belirtmek için size bir seçenek sunulabilir:

  • Yerinde proje yükseltme

    Bu seçenek, kopya oluşturmadan projenizi yükselter.

  • Yan yana proje yükseltme

    Bu seçenek yalnızca .NET Framework projeleri için kullanılabilir. Projenizi kopyalar ve kopyayı yükselterek özgün projenizi tek başına bırakır.

 Selected options
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 Source project     C:\Code\winforms\MatchingGame\MatchingGame.csproj

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

How do you want to upgrade project MatchingGame?

> In-place project upgrade
  Side-by-side project upgrade

  Navigation
    Back
    Exit

Bu adımdan sonra, birden fazla yükseltilebilir hedef çerçeve varsa bir hedef seçersiniz:

 Selected options
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 Source project     C:\Code\Work\dotnet\dotnet-docs\docs\core\porting\snippets\upgrade-assistant-wpf-framework\winforms\MatchingGame\MatchingGame.csproj
 Ugrade type        Inplace

 Steps
──────────────────────────────────────────────────
 Source project / Ugrade type / Target framework
──────────────────────────────────────────────────

What is your preferred target framework?

> .NET 6.0 (Supported until November, 2024)
  .NET 7.0 (Supported until May, 2024)
  .NET 8.0 (Try latest preview features)

  Navigation
    Back
    Exit

Projenizi yükselttikten sonra kapsamlı bir şekilde test etmeniz gerekir.