Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A NuGet számos helyen használ cél-keretrendszer-hivatkozásokat a csomag keretrendszerfüggő összetevőinek konkrét azonosítására és elkülönítésére:
- projektfájl: SDK-stílusú projektek esetén a .csproj tartalmazza a cél-keretrendszer hivatkozásait.
- .nuspec jegyzék: A csomagok a projekt célkeretétől függően különböző csomagokat jelezhetnek a projektben.
-
.nupkg mappa neve: A csomag mappájában
liblévő mappák a cél keretrendszer szerint nevezhetők el, amelyek mindegyike tartalmazza az adott keretrendszernek megfelelő DLL-eket és egyéb tartalmakat. -
packages.config: A
targetframeworkfüggőség attribútuma határozza meg a telepíteni kívánt csomag variánsát.
Az összes támogatott cél-keretrendszer és azok TFM-szintaxisának canonikus listájáért lásd: Target frameworks in SDK-style projects.
A TargetFramework-értékek aliasok
A TargetFramework projektfájl tulajdonsága egy rövid név – alias –, amelyet a rendszer lefordít egy canonical framework identity-ra. A .NET SDK ezt a fordítást a TargetFrameworkMoniker (TFM) beállításával és adott esetben a tulajdonságok beállításával hajtja végre TargetPlatformMoniker .
Íráskor <TargetFramework>net10.0-windows</TargetFramework>például a .NET SDK a következőre fordítja:
TargetFrameworkMoniker=.NETCoreApp,Version=v10.0TargetPlatformMoniker=Windows,Version=7.0
A NuGet ezeket a monikertulajdonságokat használja – nem a sztringet – a TargetFramework csomagkompatibilitás-ellenőrzésekhez. Ez azt jelenti, hogy maga az TargetFramework érték bármilyen sztring lehet, amíg a moniker tulajdonságai helyesen vannak beállítva. Például a következő projekt érvényes:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>banana</TargetFramework>
</PropertyGroup>
<PropertyGroup Condition=" '$(TargetFramework)' == 'banana' ">
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v10.0</TargetFrameworkVersion>
<TargetFrameworkMoniker>.NETCoreApp,Version=v10.0</TargetFrameworkMoniker>
</PropertyGroup>
</Project>
Ez a projekt visszaállítja és létrehozza a .NET 10.0-t, annak ellenére, hogy az érték .TargetFrameworkbanana A .NET SDK már támaszkodik erre az aliasozási mechanizmusra az olyan operációsrendszer-specifikus TFM-ek esetében, mint net8.0-ios és net8.0-androidahol a rövid TFM-et a platforminformációkkal rendelkező teljes monikerre fordítják le.
Többszörös célzás ismétlődő keretrendszerekkel
A NuGet 7.6 / .NET SDK 10.0.300-tól kezdve több TargetFrameworks alias is feloldható ugyanahhoz a hatékony keretrendszerhez. Ez olyan forgatókönyveket tesz lehetővé, mint a több-RID-buildek és a többverziós bővítmények célzása. A visszaállítás, a csomagok, a fájlok zárolása és a projekthivatkozások működésének részleteiért lásd : Több keretrendszer megcélzása.
Támogatott keretrendszerek
A keretrendszerre általában egy rövid cél-keretrendszer-moniker vagy TFM hivatkozik. A .NET Standardban ez a TxM-hez is általánosított, hogy egyetlen hivatkozás több keretrendszerre is hivatkozzon.
Megjegyzés:
Az alábbi táblákat kiszámító NuGet-ügyfél forráskódja a következő helyeken található:
- Támogatott keretrendszernevek: FrameworkConstants.cs
- Keretrendszer elsőbbsége és leképezése: DefaultFrameworkMappings.cs
A NuGet-ügyfelek támogatják az alábbi táblázatban szereplő keretrendszereket. A megfelelők szögletes zárójelben jelennek meg []. Vegye figyelembe, hogy egyes eszközök, például dotnetegyes fájlokban a canonical TFM-ek változatai használhatók. Például nem dotnet pack a fájlban, hanem netcoreapp2.0a .nuspec fájlban használ.NETCoreApp2.0. A különböző NuGet-ügyféleszközök megfelelően kezelik ezeket a változatokat, de a fájlok közvetlen szerkesztésekor mindig használjon canonical TFM-eket.
| Név | Rövidítés | TFM-k/TxM-ek |
|---|---|---|
| .NET-keretrendszer | Nettó | net11 |
| net20 | ||
| net35 | ||
| net40 | ||
| net403 | ||
| net45 | ||
| net451 | ||
| net452 | ||
| net46 | ||
| net461 | ||
| net462 | ||
| net47 | ||
| net471 | ||
| net472 | ||
| net48 | ||
| Microsoft Store (Windows Áruház) | netcore | netcore [netcore45] |
| netcore45 [win, win8] | ||
| netcore451 [win81] | ||
| netcore50 | ||
| .NET MicroFramework | netmf | netmf |
| Windows | nyer | win [win8, netcore45] |
| win8 [netcore45, win] | ||
| win81 [netcore451] | ||
| win10 (a Windows 10 Platform nem támogatja) | ||
| Silverlight | sl | sl4 |
| sl5 | ||
| Windows Phone (SL) | Wp | wp [wp7] |
| wp7 | ||
| wp75 | ||
| wp8 | ||
| wp81 | ||
| Windows Phone (UWP) | wpa81 | |
| Univerzális Windows-platform | uap | uap [uap10.0] |
| uap10.0 | ||
| uap10.0.xxxxx (ahol a 10.0.xxxxx a célplatform a fogyasztó alkalmazás minimális verziója) | ||
| .NET Standard | netstandard | netstandard1.0 |
| netstandard1.1 | ||
| netstandard1.2 | ||
| netstandard1.3 | ||
| netstandard1.4 | ||
| netstandard1.5 | ||
| netstandard1.6 | ||
| netstandard2.0 | ||
| netstandard2.1 | ||
| .NET 5+ (és .NET Core) | netcoreapp | netcoreapp1.0 |
| netcoreapp1.1 | ||
| netcoreapp2.0 | ||
| netcoreapp2.1 | ||
| netcoreapp2.2 | ||
| netcoreapp3.0 | ||
| netcoreapp3.1 | ||
| Nettó | net5.0 | |
| net6.0 | ||
| net7.0 | ||
| net8.0 | ||
| net9.0 | ||
| net10.0 | ||
| Tizen | tizen | tizen3 |
| tizen4 | ||
| Native | eredeti | eredeti |
Elavult keretrendszerek
A következő keretrendszerek elavultak. Az ezeket a keretrendszereket célzó csomagoknak a jelzett cserékre kell migrálniuk.
| Elavult keretrendszer | Replacement |
|---|---|
| aspnet50 | netcoreapp |
| aspnetcore50 | |
| dnxcore50 | |
| dnx | |
| dnx45 | |
| dnx451 | |
| dnx452 | |
| dotnet | netstandard |
| dotnet50 | |
| dotnet51 | |
| dotnet52 | |
| dotnet53 | |
| dotnet54 | |
| dotnet55 | |
| dotnet56 | |
| winrt | nyer |
Precedence
Számos keretrendszer kapcsolódik egymáshoz, és kompatibilisek egymással, de nem feltétlenül egyenértékűek:
| Keretrendszer | Lehet használni |
|---|---|
| uap (univerzális Windows platform) | Windows 8.1 |
| wpa81 | |
| netcore50 | |
| win (Microsoft Store) | winrt |
NET szabvány
A .NET Standard leegyszerűsíti a binárisan kompatibilis keretrendszerek közötti hivatkozásokat, így egyetlen cél keretrendszer hivatkozhat mások kombinációjára. (A háttérben lásd a .NET-alapozót.)
A NuGet Get Nearest Framework Tool szimulálja, hogy a NuGet mit használ egy keretrendszer kiválasztásához a projekt keretrendszerén alapuló csomag számos elérhető keretrendszer-objektumából.
A dotnet monikerek sorozatát a NuGet 3.3-ban és korábbi verzióiban kell használni; a moniker szintaxist a netstandard 3.4-es és újabb verziókban kell használni.
Hordozható osztálykódtárak
Figyelmeztetés
A PCL-ek használata nem ajánlott. Bár a PCL-ek támogatottak, a csomagkészítőknek inkább a netstandardot kell támogatniuk. A .NET Platform Standard a PCL-k evolúciója, és a platformok közötti bináris hordozhatóságot jelöli egyetlen moniker használatával, amely nem kapcsolódik statikus kódtárhoz, például hordozható a+b+c monikerekhez.
Ha több gyermek-cél keretrendszerre hivatkozó célkeretet szeretne definiálni, a portable hivatkozott keretrendszerek listájának előtagjára használt kulcsszó. Kerülje az olyan kiegészítő keretrendszerek mesterséges beépítését, amelyek nem közvetlenül fordíthatók össze, mert ezek nem szándékos mellékhatásokhoz vezethetnek ezekben a keretrendszerekben.
A harmadik felek által meghatározott további keretrendszerek kompatibilitást biztosítanak az ilyen módon elérhető más környezetekkel. Emellett vannak olyan rövid profilszámok is, amelyek a kapcsolódó keretrendszerek Profile#ezen kombinációira hivatkoznak, de ez nem ajánlott eljárás ezeknek a számoknak a használatára, mivel csökkenti a mappák és .nuspeca mappák olvashatóságát.
| Profil # | Keretrendszerek | Teljes név | .NET Standard |
|---|---|---|---|
| Profil2 | . NETFramework 4.0 | portable-net40+win8+sl4+wp7 | |
| Windows 8.0 | |||
| Silverlight 4.0 | |||
| WindowsPhone 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 | |||
| WindowsPhone 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 |
| WindowsPhone 8.1 (SL) | |||
| Profil32 | Windows 8.1 | portable-win81+wpa81 | netstandard1.2 |
| WindowsPhone 8.1 (UWP) | |||
| Profil36 | . NETFramework 4.0 | portable-net40+sl4+win8+wp8 | |
| Silverlight 4.0 | |||
| Windows 8.0 | |||
| WindowsPhone 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 | |||
| Profil47 | . NETFramework 4.5 | portable-net45+sl5+win8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| Profil49 | . NETFramework 4.5 | portable-net45+wp8 | netstandard1.0 |
| WindowsPhone 8.0 (SL) | |||
| Profil78 | . NETFramework 4.5 | portable-net45+win8+wp8 | netstandard1.0 |
| Windows 8.0 | |||
| WindowsPhone 8.0 (SL) | |||
| Profil84 | WindowsPhone 8.1 | portable-wp81+wpa81 | netstandard1.0 |
| WindowsPhone 8.1 (UWP) | |||
| Profil88 | . NETFramework 4.0 | portable-net40+sl4+win8+wp75 | |
| Silverlight 4.0 | |||
| Windows 8.0 | |||
| WindowsPhone 7.5 | |||
| Profil92 | . NETFramework 4.0 | portable-net40+win8+wpa81 | |
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil95 | . NETFramework 4.0.3 | portable-net403+sl4+win8+wp7 | |
| Silverlight 4.0 | |||
| Windows 8.0 | |||
| WindowsPhone 7.0 | |||
| Profil96 | . NETFramework 4.0.3 | portable-net403+sl4+win8+wp75 | |
| Silverlight 4.0 | |||
| Windows 8.0 | |||
| WindowsPhone 7.5 | |||
| Profil102 | . NETFramework 4.0.3 | portable-net403+win8+wpa81 | |
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil104 | . NETFramework 4.5 | portable-net45+sl4+win8+wp75 | |
| Silverlight 4.0 | |||
| Windows 8.0 | |||
| WindowsPhone 7.5 | |||
| Profil111 | . NETFramework 4.5 | portable-net45+win8+wpa81 | netstandard1.1 |
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil136 | . NETFramework 4.0 | portable-net40+sl5+win8+wp8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.0 (SL) | |||
| Profil143 | . NETFramework 4.0.3 | portable-net403+sl4+win8+wp8 | |
| Silverlight 4.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.0 (SL) | |||
| Profil147 | . NETFramework 4.0.3 | portable-net403+sl5+win8+wp8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.0 (SL) | |||
| Profil151 | NETFramework 4.5.1 | portable-net451+win81+wpa81 | netstandard1.2 |
| Windows 8.1 | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil154 | . NETFramework 4.5 | portable-net45+sl4+win8+wp8 | |
| Silverlight 4.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.0 (SL) | |||
| Profil157 | Windows 8.1 | portable-win81+wp81+wpa81 | netstandard1.0 |
| WindowsPhone 8.1 (SL) | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil158 | . NETFramework 4.5 | portable-net45+sl5+win8+wp8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.0 (SL) | |||
| Profil225 | . NETFramework 4.0 | portable-net40+sl5+win8+wpa81 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil240 | . NETFramework 4.0.3 | portable-net403+sl5+win8+wpa8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil255 | . NETFramework 4.5 | portable-net45+sl5+win8+wpa81 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| Profil259 | . NETFramework 4.5 | portable-net45+win8+wpa81+wp8 | netstandard1.0 |
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| WindowsPhone 8.0 (SL) | |||
| Profil328 | . NETFramework 4.0 | portable-net40+sl5+win8+wpa81+wp8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| WindowsPhone 8.0 (SL) | |||
| Profil336 | . NETFramework 4.0.3 | portable-net403+sl5+win8+wpa81+wp8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| WindowsPhone 8.0 (SL) | |||
| Profil344 | . NETFramework 4.5 | portable-net45+sl5+win8+wpa81+wp8 | |
| Silverlight 5.0 | |||
| Windows 8.0 | |||
| WindowsPhone 8.1 (UWP) | |||
| WindowsPhone 8.0 (SL) |
A Xamarint célzó NuGet-csomagok további Xamarin-keretrendszereket is használhatnak:
| Név | Leírás | .NET Standard |
|---|---|---|
| monoandroid | Android operációs rendszer mono támogatása | netstandard1.4 |
| monotouch | Mono támogatás iOS-hez | netstandard1.4 |
| monomac | Az OSX mono támogatása | netstandard1.4 |
| xamarinios | Xamarin támogatása iOS-hez | netstandard1.4 |
| xamarinmac | Támogatja a Mac Xamarint | netstandard1.4 |
| xamarinpsthree | A Xamarin támogatása Playstation 3-on | netstandard1.4 |
| xamarinpsfour | A Xamarin támogatása Playstation 4-en | netstandard1.4 |
| xamarinpsvita | Xamarin támogatása a PS Vita-on | netstandard1.4 |
| xamarinwatchos | Xamarin a Watch OS-hez | netstandard1.4 |
| xamarintvos | Xamarin tv operációs rendszerhez | netstandard1.4 |
| xamarinxboxthreesixty | Xamarin az XBox 360-hoz | netstandard1.4 |
| xamarinxboxone | Xamarin az XBox One-hoz | netstandard1.4 |
Megjegyzés:
Stephen Cleary létrehozott egy eszközt, amely felsorolja a támogatott PCL-eket, amelyeket a .NET keretrendszerprofiljai című bejegyzésében talál.