雖然大多數人的註意力都集中在.NET Core上,但與原來的.NET Framework相關的工作還在繼續。.NET Framework 4.6.2正式版已於近日發佈,其重點是安全和WinForms/WPF/ASP.NET/WCF相關的特性,英文博客文章https://blogs.msdn.micr... ...
雖然大多數人的註意力都集中在.NET Core上,但與原來的.NET Framework相關的工作還在繼續。.NET Framework 4.6.2正式版已於近日發佈,其重點是安全和WinForms/WPF/ASP.NET/WCF相關的特性,英文博客文章https://blogs.msdn.microsoft.com/dotnet/2016/08/02/announcing-net-framework-4-6-2/。
下載地址:
Microsoft .NET Framework 4.6.2 (Offline Installer) x86/x64
ClickOnce
當分發基於Windows Forms或WPF的應用程式時,大多數組織都會認真考慮使用ClickOnce。ClickOnce允許應用程式通過URL便捷地分發。不同於通過應用商店分發的程式,ClickOnce應用程式可以在新版本發佈時自行更新。只要在伺服器端做一點點工作,InfoQ上有篇2008年的文章 以單個人為單位準確地控制提供哪個版本詳細介紹怎麼做。
由於ClickOnce應用程式對企業用戶而言如此重要,所以安全當然是一個關註的重點。這就是為什麼運維團隊會對微軟採用TLS標準緩慢而非常地失望,之前已經爆過很多SSL 的相關漏洞。雖然TLS 1.1和TLS 1.2已分別於2006年和2008年發佈,但這是第一個實際支持那些標準的.NET ClickOnce版本。
加密
首先是支持新標準。主要特性如下:
- .NET Framework 4.6.2新增DSA(數字簽名演算法)X509證書支持,其密鑰長度超過FIPS 186-2 的1024位限制,支持FIPS 186-3。
- 除了支持FIPS 186-3更大的密鑰大小外,.NET Framework 4.6.2允許使用SHA-2族哈希演算法(SHA256、SHA384和SHA512)計算簽名。FIPS 186-3支持由新增的類DSACng提供。
談及“在軟體和硬體設備上存儲持久化對稱密鑰”,至少是從Windows 7開始,微軟就提供了Cryptography API: Next Generation (CNG)。.NET這次更新是第一個支持它的版本。
接下來是SignedXml。顧名思義,SignedXml是W3C XML數字簽名標準的實現。.NET 4.6.2的新增特性是,SignedXml支持“RSA-SHA256、RSA-SHA384和RSA-SHA512 PKCS#1簽名方法以及SHA256、SHA384和SHA512引用摘要演算法”。
WPF
當使用Windows 10時,WPF現在可以自動顯示和隱藏軟鍵盤了(即屏幕鍵盤),並且可以酌情禁用WPF手寫筆/觸摸支持。對於Windows乏善可陳的手寫筆支持,這是一項較大改進的一部分。重視高DPI問題是過去幾年中微軟推動的另外一項改進。在一個DPI比過去傳統上使用的顯示器高出許多的顯示器上運行應用程式時就會出現這些問題。另外,這還會導致圖像變小或模糊。與此相關的是多顯示器支持。即使應用程式針對一個顯示器修複了高DPI問題,當用戶有多台設置了不同DPI的顯示器時,它還是會遇到問題。過去,這可以使用本機代碼解決,但現在,微軟對可以感知每台顯示器DPI的應用程式提供了直接的.NET支持。
ASP.NET
ASP.NET Core 1.0 的相關特性也帶到了.NET Framework 4.6.2,從這裡你可以看出現在微軟的開發團隊優先開發的是.NET Core ,微軟已經發佈了.NET未來的願景 .NET Core全新路線圖:
我們還是回到ASP.NET 4.6.2 吧,這次主要的更新是非同步和SessionStateModule 和 Output-Cache Module, 也就是說ASP.NET 4.6.2 完全支持非同步化了,,包括Session和OutputCache,非同步化的支持非常重要,大家都聽說過了ASP.NET Core的高性能了,是怎麼做到的呢,這個就和完全非同步化有很大的關係。
WCF
大家知道 .NET Core 只有WCF客戶端, 服務端還得使用.NET Framework, WCF的這次更新帶來也是安全和非同步化方面支持,WCF TransportDefaults不再支持SSL3,開始用TSL 1.0 . OperationContext.Current 這個上下文訪問也支持非同步了,這對性能的提升是個很大的改進。
上面我們簡要列了一下.NET Framework 4.6.2 的主要特性,從.NET 願景來說,針對.NET開發的項目非常值得升級到.NET Framework 4.6.2 ,而且.NET Framework的相容性方面做的非常好,具體參考.NET 框架相容性簡介,推薦大家把.NET Framework 4+應用升級到.NET Framework 4.6.2,用.NET Framework開發應用也採用.NET 4.6.2/.NET Core.