Bagikan melalui


Perbedaan dengan WPF .NET

Artikel ini menjelaskan perbedaan antara Windows Presentation Foundation (WPF) pada .NET dan .NET Framework. WPF untuk .NET adalah kerangka kerja sumber terbuka yang bercabang dari kode sumber WPF asli untuk .NET Framework.

Ada beberapa fitur .NET Framework yang tidak didukung .NET. Untuk informasi selengkapnya tentang teknologi yang tidak didukung, lihat teknologi .NET Framework tidak tersedia di .NET.

Proyek format SDK

.NET menggunakan file proyek bergaya SDK. File proyek ini berbeda dari file proyek .NET Framework tradisional yang dikelola oleh Visual Studio. Untuk memigrasikan aplikasi .NET Framework WPF ke .NET, Anda harus mengonversi proyek Anda. Untuk informasi selengkapnya, lihat Cara meningkatkan aplikasi desktop WPF ke .NET 7.

Referensi paket NuGet

Jika aplikasi .NET Framework Anda mencantumkan dependensi NuGet-nya dalam file packages.config, migrasikan ke format <PackageReference>:

  1. Di Visual Studio, buka panel Penjelajah Solusi.
  2. Dalam proyek WPF Anda, klik kanan packages.config>Migrasikan packages.config ke PackageReference.

menu konteks Penjelajah Solusi di Visual Studio, menampilkan item 'Migrasikan packages.config'.

Sebuah dialog akan ditampilkan yang menunjukkan dependensi NuGet tingkat atas yang telah dihitung dan menanyakan paket NuGet lainnya mana yang perlu dipromosikan ke tingkat atas. Pilih OK dan file packages.config akan dihapus dari proyek dan elemen akan ditambahkan ke file proyek.

Saat proyek Anda menggunakan , paket tidak disimpan secara lokal di folder Paket , paket tersebut disimpan secara global. Buka file proyek dan hapus elemen apa pun yang merujuk ke folder Paket . Penganalisis ini secara otomatis termasuk dalam referensi paket NuGet.

Keamanan Akses Kode

Keamanan Akses Kode (CAS) tidak didukung oleh .NET modern, ini adalah konsep .NET Framework-only. Semua fungsi terkait CAS diperlakukan dengan asumsi kepercayaan penuh. WPF untuk .NET menghapus kode terkait CAS. Permukaan API publik dari tipe ini tetap tersedia untuk memastikan bahwa panggilan ke tipe ini berhasil.

Jenis terkait CAS yang ditentukan secara publik dipindahkan dari rakitan WPF dan ke dalam rakitan pustaka Core .NET. Assembly WPF memiliki pengaturan penerusan tipe ke lokasi baru dari tipe-tipe yang telah dipindahkan.

Rakitan sumber Target rakitan Tipe
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

Nota

Untuk meminimalkan hambatan porting, fungsionalitas untuk menyimpan dan mengambil informasi yang terkait dengan properti berikut ini dipertahankan dalam tipe XamlAccessLevel.

  • PrivateAccessToTypeName
  • AssemblyNameString