Kerangka kerja target
NuGet menggunakan referensi kerangka kerja target di berbagai tempat untuk secara khusus mengidentifikasi dan mengisolasi komponen yang bergantung pada kerangka kerja dari paket:
- file proyek: Untuk proyek bergaya SDK, .csproj berisi referensi kerangka kerja target.
- Manifes .nuspec: Paket dapat menunjukkan paket yang berbeda untuk disertakan dalam proyek tergantung pada kerangka kerja target proyek.
- Nama folder .nupkg: Folder di dalam folder paket
lib
dapat dinamai sesuai dengan kerangka kerja target, yang masing-masing berisi DLL dan konten lain yang sesuai dengan kerangka kerja tersebut. - packages.config:
targetframework
Atribut dependensi menentukan varian paket yang akan diinstal.
Catatan
NuGet mendukung semua kerangka kerja target .NET modern:
- Untuk daftar kerangka kerja target terbaru, lihat dokumentasi Kerangka kerja target dalam proyek bergaya SDK.
Kerangka kerja yang didukung
Kerangka kerja biasanya dirujuk oleh moniker kerangka kerja target pendek atau TFM. Dalam .NET Standard ini juga digeneralisasi ke TxM untuk memungkinkan referensi tunggal ke beberapa kerangka kerja.
Catatan
Kode sumber klien NuGet yang menghitung tabel di bawah ini ditemukan di lokasi berikut:
- Nama kerangka kerja yang didukung: FrameworkConstants.cs
- Prioritas dan pemetaan kerangka kerja: DefaultFrameworkMappings.cs
Klien NuGet mendukung kerangka kerja dalam tabel di bawah ini. Setara ditampilkan dalam tanda kurung siku []. Perhatikan bahwa beberapa alat, seperti dotnet
, mungkin menggunakan variasi TFM kanonis dalam beberapa file. Misalnya, dotnet pack
menggunakan .NETCoreApp2.0
dalam .nuspec
file daripada netcoreapp2.0
. Berbagai alat klien NuGet menangani variasi ini dengan benar, tetapi Anda harus selalu menggunakan TFM kanonis saat mengedit file secara langsung.
Nama | Singkatan | TFM/TxM |
---|---|---|
.NET Framework | net | net11 |
net20 | ||
net35 | ||
net40 | ||
net403 | ||
net45 | ||
net451 | ||
net452 | ||
net46 | ||
net461 | ||
net462 | ||
net47 | ||
net471 | ||
net472 | ||
net48 | ||
Microsoft Store (Windows Store) | netcore | netcore [netcore45] |
netcore45 [win, win8] | ||
netcore451 [win81] | ||
netcore50 | ||
.NET MicroFramework | netmf | netmf |
Windows | win | win [win8, netcore45] |
win8 [netcore45, win] | ||
win81 [netcore451] | ||
win10 (tidak didukung oleh Platform Windows 10) | ||
Silverlight | sl | sl4 |
sl5 | ||
Windows Telepon (SL) | Wp | wp [wp7] |
wp7 | ||
wp75 | ||
wp8 | ||
wp81 | ||
Windows Telepon (UWP) | wpa81 | |
Platform Windows Universal | uap | uap [uap10.0] |
uap10.0 | ||
uap10.0.xxxxxx (di mana 10.0.xxxxxx adalah versi min platform target dari aplikasi yang mengonsumsi) | ||
.NET Standar | netstandard | netstandard1.0 |
netstandard1.1 | ||
netstandard1.2 | ||
netstandard1.3 | ||
netstandard1.4 | ||
netstandard1.5 | ||
netstandard1.6 | ||
netstandard2.0 | ||
netstandard2.1 | ||
.NET 5+ (dan .NET Core) | netcoreapp | netcoreapp1.0 |
netcoreapp1.1 | ||
netcoreapp2.0 | ||
netcoreapp2.1 | ||
netcoreapp2.2 | ||
netcoreapp3.0 | ||
netcoreapp3.1 | ||
net | net5.0 | |
net6.0 | ||
net7.0 | ||
net8.0 | ||
Tizen | tizen | tizen3 |
tizen4 | ||
Asli | native | native |
Kerangka kerja yang tidak digunakan lagi
Kerangka kerja berikut tidak digunakan lagi. Paket yang menargetkan kerangka kerja ini harus bermigrasi ke pengganti yang ditunjukkan.
Kerangka kerja yang tidak digunakan lagi | Penggantian |
---|---|
aspnet50 | netcoreapp |
aspnetcore50 | |
dnxcore50 | |
dnx | |
dnx45 | |
dnx451 | |
dnx452 | |
dotnet | netstandard |
dotnet50 | |
dotnet51 | |
dotnet52 | |
dotnet53 | |
dotnet54 | |
dotnet55 | |
dotnet56 | |
winrt | win |
Prioritas
Sejumlah kerangka kerja terkait dan kompatibel satu sama lain, tetapi belum tentu setara:
Kerangka | Dapat menggunakan |
---|---|
uap (Platform Windows Universal) | win81 |
wpa81 | |
netcore50 | |
win (Microsoft Store) | winrt |
NET Standard
.NET Standard menyederhanakan referensi antara kerangka kerja yang kompatibel dengan biner, memungkinkan satu kerangka kerja target untuk mereferensikan kombinasi orang lain. (Untuk latar belakang, lihat .NET Primer.)
NuGet Get Nearest Framework Tool mensimulasikan apa yang digunakan NuGet untuk memilih satu kerangka kerja dari banyak aset kerangka kerja yang tersedia dalam paket berdasarkan kerangka kerja proyek.
Rangkaian dotnet
moniker harus digunakan dalam NuGet 3.3 dan yang lebih lama; netstandard
sintaks moniker harus digunakan dalam v3.4 dan yang lebih baru.
Pustaka Kelas Portabel
Peringatan
PCL tidak disarankan. Meskipun PCL didukung, penulis paket harus mendukung netstandard sebagai gantinya. Standar Platform .NET adalah evolusi PCL dan mewakili portabilitas biner di seluruh platform menggunakan satu moniker yang tidak terkait dengan pustaka statis seperti moniker portabel-a+b+c .
Untuk menentukan kerangka kerja target yang mengacu pada beberapa kerangka kerja target anak, portable
kata kunci menggunakan untuk mengawali daftar kerangka kerja yang dirujuk. Hindari secara buatan termasuk kerangka kerja tambahan yang tidak dikompilasi secara langsung karena dapat menyebabkan efek samping yang tidak diinginkan dalam kerangka kerja tersebut.
Kerangka kerja tambahan yang ditentukan oleh pihak ketiga memberikan kompatibilitas dengan lingkungan lain yang dapat diakses dengan cara ini. Selain itu, ada nomor profil singkat yang tersedia untuk mereferensikan kombinasi kerangka kerja terkait ini sebagai Profile#
, tetapi ini bukan praktik yang disarankan untuk menggunakan angka-angka ini karena mengurangi keterbacaan folder dan .nuspec
.
Profil # | Kerangka kerja | Nama lengkap | .NET Standar |
---|---|---|---|
Profil2 | . NETFramework 4.0 | portable-net40+win8+sl4+wp7 | |
Windows 8.0 | |||
Silverlight 4.0 | |||
Windows Telepon 7.0 | |||
Profil3 | . NETFramework 4.0 | portable-net40+sl4 | |
Silverlight 4.0 | |||
Profil4 | . NETFramework 4.5 | portable-net45+sl4+win8+wp7 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 7.0 | |||
Profil5 | . NETFramework 4.0 | portable-net40+win8 | |
Windows 8.0 | |||
Profil6 | . NETFramework 4.0.3 | portable-net403+win8 | |
Windows 8.0 | |||
Profil7 | . NETFramework 4.5 | portable-net45+win8 | netstandard1.1 |
Windows 8.0 | |||
Profil14 | . NETFramework 4.0 | portable-net40+sl5 | |
Silverlight 5.0 | |||
Profil18 | . NETFramework 4.0.3 | portable-net403+sl4 | |
Silverlight 4.0 | |||
Profil19 | . NETFramework 4.0.3 | portable-net403+sl5 | |
Silverlight 5.0 | |||
Profil23 | . NETFramework 4.5 | portable-net45+sl4 | |
Silverlight 4.0 | |||
Profil24 | . NETFramework 4.5 | portable-net45+sl5 | |
Silverlight 5.0 | |||
Profil31 | Windows 8.1 | portable-win81+wp81 | netstandard1.0 |
Windows Telepon 8.1 (SL) | |||
Profil32 | Windows 8.1 | portable-win81+wpa81 | netstandard1.2 |
Windows Telepon 8.1 (UWP) | |||
Profil36 | . NETFramework 4.0 | portable-net40+sl4+win8+wp8 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 8.0 (SL) | |||
Profil37 | . NETFramework 4.0 | portable-net40+sl5+win8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Profil41 | . NETFramework 4.0.3 | portable-net403+sl4+win8 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Profil42 | . NETFramework 4.0.3 | portable-net403+sl5+win8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Profil44 | . NETFramework 4.5.1 | portable-net451+win81 | netstandard1.2 |
Windows 8.1 | |||
Profil46 | . NETFramework 4.5 | portable-net45+sl4+win8 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Profile47 | . NETFramework 4.5 | portable-net45+sl5+win8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Profile49 | . NETFramework 4.5 | portable-net45+wp8 | netstandard1.0 |
Windows Telepon 8.0 (SL) | |||
Profil78 | . NETFramework 4.5 | portable-net45+win8+wp8 | netstandard1.0 |
Windows 8.0 | |||
Windows Telepon 8.0 (SL) | |||
Profile84 | Windows Telepon 8.1 | portable-wp81+wpa81 | netstandard1.0 |
Windows Telepon 8.1 (UWP) | |||
Profile88 | . NETFramework 4.0 | portable-net40+sl4+win8+wp75 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 7.5 | |||
Profile92 | . NETFramework 4.0 | portable-net40+win8+wpa81 | |
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Profile95 | . NETFramework 4.0.3 | portable-net403+sl4+win8+wp7 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 7.0 | |||
Profile96 | . NETFramework 4.0.3 | portable-net403+sl4+win8+wp75 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 7.5 | |||
Profil102 | . NETFramework 4.0.3 | portable-net403+win8+wpa81 | |
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Profil104 | . NETFramework 4.5 | portable-net45+sl4+win8+wp75 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 7.5 | |||
Profile111 | . NETFramework 4.5 | portable-net45+win8+wpa81 | netstandard1.1 |
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Profile136 | . NETFramework 4.0 | portable-net40+sl5+win8+wp8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.0 (SL) | |||
Profile143 | . NETFramework 4.0.3 | portable-net403+sl4+win8+wp8 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 8.0 (SL) | |||
Profile147 | . NETFramework 4.0.3 | portable-net403+sl5+win8+wp8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.0 (SL) | |||
Profil151 | NETFramework 4.5.1 | portable-net451+win81+wpa81 | netstandard1.2 |
Windows 8.1 | |||
Windows Telepon 8.1 (UWP) | |||
Profile154 | . NETFramework 4.5 | portable-net45+sl4+win8+wp8 | |
Silverlight 4.0 | |||
Windows 8.0 | |||
Windows Telepon 8.0 (SL) | |||
Profile157 | Windows 8.1 | portable-win81+wp81+wpa81 | netstandard1.0 |
Windows Telepon 8.1 (SL) | |||
Windows Telepon 8.1 (UWP) | |||
Profil158 | . NETFramework 4.5 | portable-net45+sl5+win8+wp8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.0 (SL) | |||
Profil225 | . NETFramework 4.0 | portable-net40+sl5+win8+wpa81 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Profil240 | . NETFramework 4.0.3 | portable-net403+sl5+win8+wpa8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Profil255 | . NETFramework 4.5 | portable-net45+sl5+win8+wpa81 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Profil259 | . NETFramework 4.5 | portable-net45+win8+wpa81+wp8 | netstandard1.0 |
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Windows Telepon 8.0 (SL) | |||
Profile328 | . NETFramework 4.0 | portable-net40+sl5+win8+wpa81+wp8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Windows Telepon 8.0 (SL) | |||
Profile336 | . NETFramework 4.0.3 | portable-net403+sl5+win8+wpa81+wp8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Windows Telepon 8.0 (SL) | |||
Profile344 | . NETFramework 4.5 | portable-net45+sl5+win8+wpa81+wp8 | |
Silverlight 5.0 | |||
Windows 8.0 | |||
Windows Telepon 8.1 (UWP) | |||
Windows Telepon 8.0 (SL) |
Selain itu, paket NuGet yang menargetkan Xamarin dapat menggunakan kerangka kerja tambahan yang ditentukan Xamarin. Lihat Membuat paket NuGet untuk Xamarin.
Nama | Deskripsi | .NET Standar |
---|---|---|
monoandroid | Dukungan Mono untuk OS Android | netstandard1.4 |
monotouch | Dukungan Mono untuk iOS | netstandard1.4 |
monomac | Dukungan Mono untuk OSX | netstandard1.4 |
xamarinios | Dukungan untuk Xamarin untuk iOS | netstandard1.4 |
xamarinmac | Dukungan untuk Xamarin untuk Mac | netstandard1.4 |
xamarinpsthree | Dukungan untuk Xamarin di Playstation 3 | netstandard1.4 |
xamarinpsfour | Dukungan untuk Xamarin di Playstation 4 | netstandard1.4 |
xamarinpsvita | Dukungan untuk Xamarin di PS Vita | netstandard1.4 |
xamarinwatchos | Xamarin untuk Watch OS | netstandard1.4 |
xamarintvos | Xamarin untuk OS TV | netstandard1.4 |
xamarinxboxthreesixty | Xamarin untuk XBox 360 | netstandard1.4 |
xamarinxboxone | Xamarin untuk XBox One | netstandard1.4 |
Catatan
Stephen Cleary telah membuat alat yang mencantumkan PCL yang didukung, yang dapat Anda temukan di postingannya, profil Framework di .NET.