.NET 5 GA Sürümü ile C#/WinRT Sürüm 1.0 Duyurusu

  • History |
  • |
  • 0 Yorum

Bugün, .NET 5 için resmi GA sürümü ve bununla birlikte, C#/WinRT sürüm 1.0'ın son sürümümüzle ilgili en son güncellemeleri paylaşmaktan heyecan duyuyoruz C#/WinRT, .NET 5 tabanlı uygulamalar için WinRT projeksiyon desteği sağlar. Windows SDK, bu teknolojiden yararlanır ve yeni Target Framework Monikers aracılığıyla Windows API'lerini ortaya çıkarmak için şimdi .NET 5.0 SDK ile entegre edilmiştir .NET 5 için eklenen Windows SDK desteğine ek olarak, C#/WinRT, bileşen yazarlarının CsWinRT NuGet paketini kullanarak kendi .NET 5 projeksiyonlarını oluşturmasına olanak tanır .
.NET 5'te en son çalışma zamanı ve SDK güncellemelerini kullanmak için aşağıdakileri yükleyin:

CsWinRT Github deposunu ziyaret ederek C#/WinRT ile yapılan en son çalışmalardan haberdar olabilirsiniz .

.NET 5'te yeni TFM'lerle Windows API'lerini çağırın

C#/WinRT, Windows SDK projeksiyonları oluşturarak ve bunları küçük bir çalışma zamanı derlemesiyle birlikte .NET 5.0 SDK'ya dahil ederek .NET 5'te WinRT API'leri için destek sağlar. Bu yeni destekle, Windows API'lerine artık yeni Target Framework Monikers özelliği kullanılarak erişilmelidir Yeni TFM'ler, bir .NET 5 uygulamasında Windows API'lerine basit ve akıcı bir erişim sağlar.
Aşağıdaki TFM'ler ve ilgili SDK sürümleri desteklenir:
  • net5.0-windows10.0.17763.0 (Windows 10, sürüm 1809)
  • net5.0-windows10.0.1862.0 (Windows 10, sürüm 1903)
  • net5.0-windows10.0.19041.0 (Windows 10, sürüm 2004)
TFM'deki SDK sürümünün, uygulamanızın üzerinde çalışacağı minimum işletim sistemi sürümü değil, uygulamanızı oluşturmak için kullanılan Windows SDK sürümü olduğunu unutmayın. .NET 5'teki yeni TFM'ler, proje dosyanızda veya NuGet paketi oluşturmanızda kullanılabilir ve ileriye dönük olarak .NET 5'te Windows'u hedeflemek için önerilen yöntem budur. Projenizde TFM'leri kullanmak için, istediğiniz SDK sürümüyle proje dosyanıza aşağıdaki kod satırını eklemeniz yeterlidir:
< TargetFramework > net5. 0 -windows1 0 . 0.19041 . 0 < /Hedef Çerçeve >
Üzerine blog yazısı bakın uygulamanızda, Windows TFMs nasıl kullanılacağı hakkında daha fazla ayrıntı için .NET 5 Windows API'leri çağırma sıra sıra geliştirici belgelerine Windows masaüstü uygulamaları için.

En Son Windows Çalışma Zamanı Güncellemeleri

C#/WinRT 1.0 Sürümü , .NET 5.0 SDK'nın bir parçası olarak çalışma zamanı derlememiz winrt.runtime.dll aracılığıyla gönderilen en son çalışma zamanı güncellemelerini içerir Çalışma zamanı derlemesine ve Windows SDK projeksiyonlarına, yukarıda bahsedilen .NET 5 TFM'leri aracılığıyla erişilir.
Eklediğimiz en son .NET 5 özelliklerinden bazıları, gelişmiş performans ve doğal C# tarzı yayınlar uygulamak için C# işlev işaretçilerini içerir. Bu güncellemeler hakkında daha fazla bilgi edinmek için .NET 5'te yerel kod birlikte çalışmasındaki iyileştirmelerle ilgili blog gönderisine göz atın .
Performans iyileştirmeleri yaptık ve ekip tarafından ve ayrıca depomuz aracılığıyla geliştirici geri bildirimlerinden kaynaklanan birkaç kritik hatayı düzelttik. Bu düzeltmelerden bazıları şunlardır:
  • ref const C# parametreleri için projeksiyon desteği eklendi
  • C# IDictionary nesneleri kullanırken NullReferenceExceptions için düzeltmeler
  • WindowsRuntimeBufferExtensions yöntemlerini kullanmayla ilgili sorunlar çözüldü
  • InvalidCastExceptions içeren birkaç hata düzeltmesi
Ayrıca, çerçeveleri için C#/WinRT projeksiyonlarını kullanan WinUI ile ilgili birkaç hatayı da ele aldık. Bu son değişikliklerin doğası gereği, C#/WinRT veya Windows API'lerini kullanan tüm bileşen kitaplıkları ve uygulamaları .NET 5 GA sürümüne güncellenmelidir. .NET 5 RC2 ve RTM arasındaki değişikliklerin tam listesi için lütfen Github depomuzdaki v1.0 sürümüne bakın .

Bileşen Yazarları için C#/WinRT Projeksiyon Desteği

C#/WinRT projesi, bileşen yazarlarına bileşenlerinin C# uygulama geliştiricileri tarafından tüketilebilecek C# projeksiyon derlemeleri oluşturması için destek sağlar. Bileşen yazarları CsWinRT NuGet paketine başvurarak Visual Studio'daki geliştirilmiş proje araçlarımızı kullanarak bir derleme oluşturabilir.
Bir C++/WinRT bileşeninden .NET 5 projeksiyonunun nasıl oluşturulacağını ve projeksiyon derlemesinin bir NuGet paketi olarak nasıl dağıtılacağını ve tüketileceğini gösteren, depomuza uçtan uca bir örnek eklendi. Bu numunenin örneklerde C # / WinRT docs daha ayrıntılı bilgi sağlar. Son C#/WinRT blog gönderisinde bir projeksiyon oluşturmaya yönelik takım deneyimi hakkında daha fazla bilgi edinebilirsiniz .

Kapanış

C#/WinRT, WinRT ekosisteminin ve .NET çalışma zamanının artık bağımsız olarak yenilik yapabilmesi için .NET 5'in yerleşik WinRT desteğini kaldırmasını sağladı  Ayrıca bileşen yazarlarına, .NET 5 tüketicilerinin kullanması için C# projeksiyon derlemeleri oluşturmaları için araçlar sağladık.
Ekip için sırada, C# .NET 5 geliştiricilerinin kendi C#/WinRT bileşenlerini oluşturmaları için destek yazma üzerinde çalışıyoruz. Bu yeni yetenekler, C#/WinRT'nin gelecekteki bir sürümünde kullanıma sunulacaktır; CSWinRT deposundaki en son değişikliklerden haberdar olun .