Az Environment.OSVersion az operációs rendszer megfelelő verzióját adja vissza
Environment.OSVersion Az operációs rendszer (OS) tényleges verzióját adja vissza például az alkalmazáskompatibilitáshoz kiválasztott operációs rendszer helyett.
Módosítás leírása
A korábbi .NET-verziókban olyan operációsrendszer-verziót ad vissza, Environment.OSVersion amely helytelen lehet, ha egy alkalmazás Windows kompatibilitási módban fut. További információ: GetVersionExA függvény megjegyzései. MacOS Environment.OSVersion rendszeren az alapul szolgáló Darwin kernelverziót adja vissza.
A .NET 5-től Environment.OSVersion kezdődően a Windows és macOS operációs rendszer tényleges verzióját adja vissza.
Az alábbi táblázat a viselkedésbeli különbséget mutatja be.
Korábbi .NET-verziók | .NET 5+ | |
---|---|---|
Windows | 6.2.9200.0 | 10.0.19042.0 |
macOS | 19.6.0.0 | 10.15.7 |
A változás oka
A tulajdonság felhasználói elvárják, hogy az operációs rendszer tényleges verzióját adja vissza. A legtöbb .NET-alkalmazás nem adja meg a támogatott verziót az alkalmazásjegyzékben, ezért az alapértelmezett támogatott verziót a dotnet-gazdagépről kapja meg. Ennek eredményeképpen a kompatibilitási shim ritkán értelmezhető a futó alkalmazás számára. Ha a Windows új verziót ad ki, és egy régebbi dotnet-gazdagép még használatban van, előfordulhat, hogy ezek az alkalmazások helytelen operációsrendszer-verziót kapnak. A tényleges verzió visszaadása jobban megfelel az API fejlesztői elvárásainak.
A .NET 5 Environment.OSVersion bevezetésekor OperatingSystem.IsWindowsVersionAtLeastOperatingSystem.IsMacOSVersionAtLeasta windowsos és System.Runtime.Versioning.SupportedOSPlatformAttribute macOS rendszereken konzisztens lett.
Bevezetett verzió
5,0
Javasolt művelet
Tekintse át és tesztelje azokat a kódot, amelyek biztosítják, hogy Environment.OSVersion a kód a kívánt módon viselkedjen.
Érintett API-k
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: