Windows uyumluluk paketini .net 5 + ile bağlantı noktası kodu için kullanın
.NET Framework mevcut kodu .net 'e taşırken bulunan en yaygın sorunlardan bazıları, yalnızca .NET Framework bulunan apı ve teknolojilerin bağımlılıklarıdır. Windows uyumluluk paketi bu teknolojilerin çoğunu sağlar, bu nedenle .net uygulamaları ve .NET Standard kitaplıklarını derlemek çok daha kolaydır.
Uyumluluk Paketi, API kümesini önemli ölçüde artıran .NET Standard 2,0 ' nin bir mantıksal uzantısıdır. Mevcut kod, neredeyse hiçbir değişiklik ile derlenir. "tüm .net uygulamalarının sağladığı apı 'ler kümesi" taahhüdünü sürdürmek için .NET Standard, kayıt defteri, Windows Yönetim Araçları (wmı) veya yansıma yayma apı 'leri gibi tüm platformlarda çalışmayan teknolojiler içermez. Windows uyumluluk paketi .NET Standard en üstünde bulunur ve yalnızca bu Windows teknolojilerine erişim sağlar. özellikle .net 'e geçmek isteyen ancak en azından ilk bir adım olarak Windows devam etmek isteyen müşteriler için yararlıdır. bu senaryoda, yalnızca Windows teknolojileri kullanabilirsiniz.
Paket içeriği
Windows uyumluluk paketi Microsoft. Windows aracılığıyla sağlanır. uyumluluk NuGet paketi ve .net veya .NET Standard ' i hedefleyen projelerden başvurulabilirler.
aşağıdaki teknoloji alanlarından yalnızca Windows ve platformlar arası apı 'ler dahil olmak üzere 20.000 apı 'si sağlar:
- Kod Sayfaları
- CodeDom
- Yapılandırma
- Dizin Hizmetleri
- Çizim
- ODBC
- İzinler
- Bağlantı noktaları
- Windows Access Control listeleri (ACL)
- Windows Communication Foundation (WCF)
- Windows şifreleme
- Windows EventLog
- Windows Yönetim Araçları (WMI)
- Windows performans sayaçları
- Windows Kayıt Defteri
- Windows Çalışma Zamanı Önbelleğe Alma
- Windows Hizmetleri
Daha fazla bilgi için bkz. Uyumluluk paketinin belirtimi.
başlarken
Taşıma işleminden önce, taşıma işleminegöz atın.
Mevcut kodu .NET veya .NET Standard taşıma sırasında Microsoft. Windows ' yi yüklemek. uyumluluk NuGet paketi.
Windows kalmak istiyorsanız, her şey hazırsınız demektir.
Linux veya macOS 'ta .NET uygulamasını veya .NET Standard kitaplığını çalıştırmak istiyorsanız, platformlar arası çalışmayan API 'lerin kullanımını bulmak için platform uyumluluğu Çözümleyicisi ' ni kullanın.
Bu API 'lerin kullanımlarını kaldırın, bunları platformlar arası alternatifler ile değiştirin ya da şunun gibi bir platform denetimi kullanarak koruma edin:
private static string GetLoggingPath() { // Verify the code is running on Windows. if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { using (var key = Registry.CurrentUser.OpenSubKey(@"Software\Fabrikam\AssetManagement")) { if (key?.GetValue("LoggingDirectoryPath") is string configuredPath) return configuredPath; } } // This is either not running on Windows or no logging path was configured, // so just use the path for non-roaming user-specific data files. var appDataPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); return Path.Combine(appDataPath, "Fabrikam", "AssetManagement", "Logging"); }
tanıtım için, Windows uyumluluk paketi 'nin Channel 9 videosunuinceleyin.