每個(gè)版本的 .NET framework 都包含公共語言運(yùn)行時(shí) (CLR)、基類庫和其他托管庫。 本主題按版本介紹了 .NET Framework 的關(guān)鍵功能,提供了有關(guān)基礎(chǔ) CLR 版本和相關(guān)開發(fā)環(huán)境的信息,并標(biāo)識(shí)了 Windows 操作系統(tǒng)所安裝的版本。
下表總結(jié)了 .NET Framework 版本歷史,并將每個(gè)版本與 Visual Studio、Windows 和 Windows Server 相關(guān)聯(lián)。 請(qǐng)注意,Visual Studio 提供了多目標(biāo)功能,因此你將不會(huì)限于僅使用列出的 .NET Framework 版本。
每個(gè)新版本的 .NET Framework 都會(huì)保留早期版本中的功能并會(huì)添加新功能。 CLR 由其自己的版本號(hào)標(biāo)識(shí)。 雖然 CLR 版本并不總是遞增的,但 .NET Framework 版本號(hào)在每次發(fā)布時(shí)都會(huì)遞增。 例如,.NET Framework 4、4.5 和更高版本包含 CLR 4,而 .NET Framework 2.0、3.0 和 3.5 包含 CLR 2.0。 (沒有版本 3 的 CLR。)
有關(guān)受支持操作系統(tǒng)的完整列表,請(qǐng)參閱系統(tǒng)要求。 有關(guān)下載,請(qǐng)參閱安裝面向開發(fā)人員的 .NET Framework。 有關(guān)確定計(jì)算機(jī)上已安裝哪些 .NET Framework 版本,請(qǐng)參閱如何:確定安裝了哪些 .NET Framework 版本。
在表中,帶有標(biāo)記 ? 的操作系統(tǒng)版本上安裝的 .NET Framework 版本必須在控制面板中啟用(適用于 Windows)或通過服務(wù)器管理器啟用(適用于 Windows Server),該標(biāo)記顯示在“包含在/可安裝在 Windows 中”和“包含在/可安裝在 Windows Server 中”列。
.NET Framework 版本 | CLR 版本 | 功能 | 包含在 Visual Studio 版本中 | ? 包括在內(nèi) + 可在其上安裝 Windows | ? 包括在內(nèi) + 可在其上安裝 Windows Server | 確定已安裝的 .NET 版本 |
4.7.1 |
4 |
- 支持 .NET Standard 2.0。 - 支持配置生成器,允許在運(yùn)行時(shí)創(chuàng)建配置文件。 - 運(yùn)行時(shí)功能檢查,使你能夠確定運(yùn)行時(shí)環(huán)境中是否支持預(yù)定義的功能。 - 可序列化值元組。 - 垃圾回收性能改進(jìn)。 - 支持可移植的 PDB。 - 對(duì) Message.HashAlgorithm 的 SHA-2 支持。 - 支持使用 HttpCookie.TryParse 方法分析 ASP.NET cookie。 - 支持針對(duì) ASP.NET 窗體身份驗(yàn)證憑據(jù)的 SHA-2 哈希處理。 - 針對(duì)應(yīng)用開發(fā)者的大量輔助功能改進(jìn);請(qǐng)參閱 .NET Framework 中輔助功能的新增功能。 |
|
? 10 Fall Creators Update
+ 10 創(chuàng)意者更新 + 10 周年更新 + 8.1 +7 |
+ 2016 + 2012 R2 + 2012 + 2008 R2 SP1 |
使用 Release DWORD:
- 461308(Windows 10 創(chuàng)意者更新) - 461310(所有其他操作系統(tǒng)版本)
(請(qǐng)參閱說明) |
4.7 |
4 |
- 支持由操作系統(tǒng)提供的 TLS 支持級(jí)別。 - 能夠?yàn)?TLS1.1 或 TLS1.2 配置默認(rèn)的消息安全設(shè)置。 - 提高了 DataContractJsonSerializer 的可靠性。 - 提高了 WCF 應(yīng)用程序序列化和反序列化的可靠性。 - 能夠擴(kuò)展 ASP.NET 對(duì)象緩存。 - 支持基于 WM_POINTER Windows 消息(而不是 WPF 應(yīng)用程序的 Windows Ink 服務(wù)平臺(tái) (WISP))的觸控/觸筆堆疊。 - 使用窗口的打印文檔包 API 在 WPF 應(yīng)用程序中進(jìn)行打印。 - 增強(qiáng)了對(duì) Windows 窗體應(yīng)用程序(在 Windows 10 創(chuàng)意者更新上運(yùn)行)的高 DPI 和多監(jiān)視器支持。 |
|
? 10 創(chuàng)意者更新
+ 10 周年更新 + 8.1 +7 |
+ 2016 + 2012 R2 + 2012 + 2008 R2 SP1 |
使用 Release DWORD:
- 460798(Windows 10 創(chuàng)意者更新) - 460805(所有其他操作系統(tǒng)版本)
(請(qǐng)參閱說明) |
4.6.2 |
4 |
- 加密增強(qiáng)功能,包括對(duì)包含 FIS 186-3 DSA 的 X509 證書的支持、對(duì)持久化密鑰對(duì)稱加密的支持、對(duì) SHA-2 哈希的 SignedXml 支持,提高了 ECDiffieHellman 密鑰派生例程輸入的清晰度。 - 對(duì)于 Windows Presentation Foundation (WPF) 應(yīng)用,支持屏幕鍵盤和按監(jiān)視器 DPI 感知。 - 對(duì) TLS 1.1 和 TLS 1.2 協(xié)議的 ClickOnce 支持。 - 支持將 Windows 窗體和 WPF 應(yīng)用轉(zhuǎn)換為 UWP 應(yīng)用。 |
|
? 10 周年更新
+ 10 十一月更新 + 10 + 8.1 + 7 |
? 2016
+ 2012 R2 + 2012 + 2008 R2 SP1 |
使用 Release DWORD:
- 394802(Windows 10 周年更新) - 394806(所有其他操作系統(tǒng)版本)
(請(qǐng)參閱說明) |
4.6.1 |
4 |
- 對(duì)包含 ECDSA 的 X509 證書的支持 - 對(duì) ADO.NET 中的硬件保護(hù)密鑰的始終加密支持 - WPF 中的拼寫檢查改進(jìn) - 更多... |
|
? 10 November Update
+ 10 + 8.1 + 8 + 7 |
+ 2012 R2 + 2012 + 2008 R2 SP1 |
使用 Release DWORD:
- 394254(Windows 10 十一月更新) - 394271(所有其他操作系統(tǒng)版本)
(請(qǐng)參閱說明) |
4.6 |
4 |
- 使用 .NET Native 編譯 - ASP.NET Core 5 - 事件跟蹤改進(jìn) - 對(duì)頁面編碼的支持 - 更多... |
2015,盡管部分 .NET 庫可在 NuGet 上獲取。 有關(guān)詳細(xì)信息,請(qǐng)參閱 .NET Framework 和帶外版本。 |
? 10 + 8.1 + 8 + 7 + Vista |
+ 2012 R2 + 2012 + 2008 R2 SP1 + 2008 SP2 |
使用 Release DWORD:
- 393295 (Windows 10) - 393297(所有其他操作系統(tǒng)版本)
(請(qǐng)參閱說明) |
4.5.2 |
4 |
- 用于事務(wù)系統(tǒng)和 ASP.NET 的新 API - Windows 窗體控件中的系統(tǒng) DPI 調(diào)整大小功能 - 分析改進(jìn) - ETW 和壓力日志記錄改進(jìn) - 更多... |
- |
+ 8.1 + 8 + 7 + Vista |
+ 2012 R2 + 2012 + 2008 R2 SP1 + 2008 SP2 |
使用 Release DWORD:379893 (請(qǐng)參閱說明) |
4.5.1 |
4 |
- 對(duì) Windows Phone 應(yīng)用商店應(yīng)用的支持 - 自動(dòng)綁定重定向 - 性能和調(diào)試改進(jìn) - 更多... |
2013 |
? 8.1 + 8 + 7 + Vista |
? 2012 R2 + 2012 + 2008 R2 SP1 + 2008 SP2 |
使用 Release DWORD:
- 378675 (Windows 8.1) - 378758(所有其他)
(請(qǐng)參閱說明) |
4.5 |
4 |
- 對(duì) Windows 應(yīng)用商店應(yīng)用的支持 - WPF、WCF、WF、ASP.NET 更新 - 更多... |
2012 |
? 8 + 7 + Vista |
? 2012 + 2008 R2 SP1 + 2008 SP2 |
使用 Release DWORD:378389 (請(qǐng)參閱說明) |
4 |
4 |
- 擴(kuò)展的基類庫 - 使用可移植類庫的跨平臺(tái)開發(fā) - MEF、DLR、代碼協(xié)定 - 更多... |
2010 |
+ 7 + Vista |
+ 2008 R2 SP1 + 2008 SP2 + 2003 |
請(qǐng)參閱說明 |
3.5 |
2.0 |
- 啟用 AJAX 的網(wǎng)站 - LINQ - 動(dòng)態(tài)數(shù)據(jù) - 更多... |
2008 |
? 10? 8.1 ? 8* ? 7 + Vista |
?2008 R2 SP1 + 2012 R2 + 2012 + 2008 SP2 + 2003 |
請(qǐng)參閱說明 |
3.0 |
2.0 |
- WPF、WCF、WF、CardSpace |
- |
? Vista |
? 2008 R2 SP1 ? 2008 SP2* + 2003 |
請(qǐng)參閱說明 |
2.0 |
2.0 |
- 泛型 - ASP.NET 添加項(xiàng) - 更多... |
2005 |
- |
? 2008 R2 SP1 ? 2008 SP2 ? 2003 |
請(qǐng)參閱說明 |
1.1 |
1.1 |
- ASP.NET 和 ADO.NET 更新 - 并行執(zhí)行 - 更多... |
2003 |
- |
? 2003 |
請(qǐng)參閱說明 |
1.0 |
1.0 |
.NET Framework 的第一個(gè)版本。 |
Visual Studio .NET |
- |
- |
請(qǐng)參閱說明 |
通常,你不應(yīng)卸載計(jì)算機(jī)上安裝的 .NET Framework 的任何版本,因?yàn)槟闶褂玫膽?yīng)用程序可能依賴于特定版本,如果你移除該版本,則應(yīng)用程序可能會(huì)中斷。 你可以在一臺(tái)計(jì)算機(jī)上同時(shí)加載 .NET Framework 的多個(gè)版本。 這意味著,你可以安裝 .NET Framework 而無需卸載早期版本。 有關(guān)詳細(xì)信息,請(qǐng)參閱入門。
面向并運(yùn)行 .NET Framework 版本 4.5 和更高版本的應(yīng)用
.NET Framework 4.5 是替代計(jì)算機(jī)上的 .NET Framework 4 的就地更新,同樣,.NET Framework 4.5.1 4.5.2、4.6、4.6.1、4.6.2、4.7 和 4.7.1 是對(duì) .NET Framework 4.5 的就地更新,這意味著它們將使用相同的運(yùn)行時(shí)版本,但是程序集版本會(huì)更新并包括新類型和成員。 在安裝其中某個(gè)更新后,你的 .NET Framework 4、.NET Framework 4.5、.NET Framework 4.6 或 .NET Framework 4.7 應(yīng)用應(yīng)繼續(xù)運(yùn)行,而無需重新編譯。 但是,反過來則不行。 建議不要在較早版本的 .NET Framework 上運(yùn)行面向更高版本的 .NET Framework 的應(yīng)用。 例如,我們建議你不要在 .NET Framework 4.5 上運(yùn)行面向 .NET Framework 4.6 的應(yīng)用。 以下準(zhǔn)則將適用:
-
在 Visual Studio 中,可以選擇 .NET Framework 4.5 作為項(xiàng)目的目標(biāo)框架(這將設(shè)置 GetReferenceAssemblyPaths.TargetFrameworkMoniker屬性)以將項(xiàng)目編譯為 .NET Framework 4.5 程序集或可執(zhí)行文件。 此程序集或可執(zhí)行文件隨后可用于安裝了 .NET Framework 4.5、4.5.1、4.5.2、4.6、4.6.1、4.6.2、4.7 或 4.7.1 的任何計(jì)算機(jī)。
-
在 Visual Studio 中,可以選擇 .NET Framework 4.5.1 作為項(xiàng)目的目標(biāo)框架(這將設(shè)置 GetReferenceAssemblyPaths.TargetFrameworkMoniker 屬性)以將項(xiàng)目編譯為 .NET Framework 4.5.1 程序集或可執(zhí)行文件。 此程序集或可執(zhí)行文件應(yīng)只在安裝了 .NET Framework 4.5.1 或 .NET Framework 更高版本的計(jì)算機(jī)上運(yùn)行。 將阻止面向 .NET Framework 4.5.1 的可執(zhí)行文件在僅安裝了 .NET Framework 的早期版本(例如 .NET Framework 4.5)的計(jì)算機(jī)上運(yùn)行,并且系統(tǒng)會(huì)提示用戶安裝 .NET Framework 4.5.1。 此外,不應(yīng)從面向 .NET Framework 的早期版本(例如 .NET Framework 4.5)的應(yīng)用中調(diào)用 .NET Framework 4.5.1 程序集。
此處使用的 .NET Framework 4.5.1 和 .NET Framework 4.5 僅作為示例。 此原則適用于任意滿足以下條件的應(yīng)用:應(yīng)用所面向的 .NET framework 版本高于運(yùn)行該應(yīng)用的系統(tǒng)上的 .NET framework 版本。
.NET Framework 中的某些更改可能需要更改應(yīng)用代碼;請(qǐng)先參閱應(yīng)用程序兼容性,然后再使用 .NET Framework 4.5 或更高版本運(yùn)行現(xiàn)有應(yīng)用。 若要了解如何安裝當(dāng)前版本,請(qǐng)參閱安裝面向開發(fā)人員的 .NET Framework。 有關(guān)對(duì) .NET Framework 的支持的信息,請(qǐng)參閱 Microsoft 支持網(wǎng)站上的 Microsoft .NET Framework 支持生命周期策略。
以針對(duì)早期版本的應(yīng)用程序?yàn)槟繕?biāo)并運(yùn)行這些應(yīng)用程序
.NET Framework 版本 2.0、3.0 和 3.5 是使用同一 CLR 版本 (CLR 2.0) 生成的。 這些版本表示單個(gè)安裝的連續(xù)層。 每個(gè)版本將基于早期版本以增量方式生成。 無法在計(jì)算機(jī)上并行運(yùn)行版本 2.0、3.0 和 3.5。 在安裝 3.5 版時(shí),你將自動(dòng)獲得 2.0 和 3.0 層,并且為版本 2.0、3.0 和 3.5 生成的應(yīng)用程序均可在 3.5 版上運(yùn)行。 但是,.NET Framework 4 會(huì)結(jié)束此分層方法。 從 .NET Framework 4 開始,可使用進(jìn)程內(nèi)并行承載在單個(gè)進(jìn)程中運(yùn)行 CLR 的多個(gè)版本。 有關(guān)詳細(xì)信息,請(qǐng)參閱程序集和并行執(zhí)行。
此外,如果你的應(yīng)用程序面向 2.0、3.0 或 3.5 版,你的用戶可能需要先在 Windows 8 或 Windows 8.1計(jì)算機(jī)上啟用 .NET Framework 3.5,然后才能運(yùn)行應(yīng)用程序。 有關(guān)詳細(xì)信息,請(qǐng)參閱在 Windows 10、Windows 8.1 和 Windows 8 上安裝 .NET Framework 3.5。
后續(xù)步驟
請(qǐng)參閱
版本兼容性 Microsoft .NET Framework 支持生命周期策略 安裝和卸載 .NET Framework 受阻疑難解答
注冊(cè)表版本位置:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full中Release值
|