Aracılığıyla paylaş


WPF .NET ile farklılıklar

Bu makalede, .NET üzerinde Windows Presentation Foundation (WPF) ile .NET Framework arasındaki farklar açıklanmaktadır. .NET için WPF, .NET Framework kaynak kodu için özgün WPF'den çatallanmış bir açık kaynak çerçevedir .

.NET Framework'ün desteklemediği birkaç özellik vardır. Desteklenmeyen teknolojiler hakkında daha fazla bilgi için bkz . .NET'te kullanılamayan .NET Framework teknolojileri.

Önemli

.NET 7 ve .NET 6 için Masaüstü Kılavuzu belgeleri yapım aşamasındadır.

SDK stili projeler

.NET, SDK stili proje dosyalarını kullanır. Bu proje dosyaları, Visual Studio tarafından yönetilen geleneksel .NET Framework proje dosyalarından farklıdır. .NET Framework WPF uygulamalarınızı .NET'e geçirmek için projelerinizi dönüştürmeniz gerekir. Daha fazla bilgi için bkz . WPF masaüstü uygulamasını .NET 7'ye yükseltme.

NuGet paket başvuruları

.NET Framework uygulamanız NuGet bağımlılıklarını packages.config dosyasında listelediyse şu biçime <PackageReference> geçin:

  1. Visual Studio'da Çözüm Gezgini bölmesini açın.
  2. WPF projenizde packages.config Packages.config öğesini PackageReference'a geçirin öğesine sağ tıklayın.>

Upgrading to PackageReference.

Hesaplanan en üst düzey NuGet bağımlılıklarını gösteren ve hangi diğer NuGet paketlerinin en üst düzeye yükseltilmesi gerektiğini soran bir iletişim kutusu görüntülenir. Tamam'ı seçtiğinizde packages.config dosyası projeden kaldırılır ve <PackageReference> öğeler proje dosyasına eklenir.

Projeniz kullandığında <PackageReference>paketler bir Packages klasöründe yerel olarak depolanmaz, genel olarak depolanır. Proje dosyasını açın ve Packages klasörüne başvuruda bulunan öğeleri <Analyzer> kaldırın. Bu çözümleyiciler NuGet paket başvurularına otomatik olarak eklenir.

Kod Erişimi Güvenliği

Kod Erişim Güvenliği (CAS) .NET tarafından desteklenmez. CAS ile ilgili tüm işlevler tam güven varsayımı altında ele alır. .NET için WPF, CAS ile ilgili kodu kaldırır. Bu türlerdeki çağrıların başarılı olmasını sağlamak için bu türlerin genel API yüzeyi hala mevcuttur.

Genel olarak tanımlanmış CAS ile ilgili türler WPF derlemelerinden ve Çekirdek .NET kitaplık derlemelerine taşındı. WPF derlemeleri, taşınan türlerin yeni konumuna ayarlanmış tür iletmeye sahiptir.

Kaynak derleme Hedef derleme Tür
WindowsBase.dll System.Security.Permissions.dll MediaPermission
MediaPermissionAttribute
MediaPermissionAudio
MediaPermissionImage
MediaPermissionVideo
WebBrowserPermission
WebBrowserPermissionAttribute
WebBrowserPermissionLevel
System.Xaml.dll System.Security.Permissions.dll XamlLoadPermission
System.Xaml.dll System.Windows.Extension.dll XamlAccessLevel

Dekont

Taşıma uyuşmalarını en aza indirmek için, aşağıdaki özelliklerle ilgili bilgileri depolama ve alma işlevselliği türünde XamlAccessLevel tutuldu.

  • PrivateAccessToTypeName
  • AssemblyNameString