NET Framework 版本和依賴關係

来源:http://www.cnblogs.com/cncc/archive/2017/12/14/8037455.html
-Advertisement-
Play Games

每個版本的 .NET framework 都包含公共語言運行時 (CLR)、基類庫和其他托管庫。 本主題按版本介紹了 .NET Framework 的關鍵功能,提供了有關基礎 CLR 版本和相關開發環境的信息,並標識了 Windows 操作系統所安裝的版本。 備註 若要瞭解如何下載和安裝 .NET ...


原文:
https://docs.microsoft.com/zh-cn/dotnet/framework/migration-guide/versions-and-dependencies

每個版本的 .NET framework 都包含公共語言運行時 (CLR)、基類庫和其他托管庫。 本主題按版本介紹了 .NET Framework 的關鍵功能,提供了有關基礎 CLR 版本和相關開發環境的信息,並標識了 Windows 操作系統所安裝的版本。

備註

若要瞭解如何下載和安裝 .NET Framework,請參閱安裝面向開發人員的 .NET Framework

下表總結了 .NET Framework 版本歷史,並將每個版本與 Visual Studio、Windows 和 Windows Server 相關聯。 請註意,Visual Studio 提供了多目標功能,因此你將不會限於僅使用列出的 .NET Framework 版本。

每個新版本的 .NET Framework 都會保留早期版本中的功能並會添加新功能。 CLR 由其自己的版本號標識。 雖然 CLR 版本並不總是遞增的,但 .NET Framework 版本號在每次發佈時都會遞增。 例如,.NET Framework 4、4.5 和更高版本包含 CLR 4,而 .NET Framework 2.0、3.0 和 3.5 包含 CLR 2.0。 (沒有版本 3 的 CLR。)

有關受支持操作系統的完整列表,請參閱系統要求。 有關下載,請參閱安裝面向開發人員的 .NET Framework。 有關確定電腦上已安裝哪些 .NET Framework 版本,請參閱如何:確定安裝了哪些 .NET Framework 版本

在表中,帶有標記 ✓ 的操作系統版本上安裝的 .NET Framework 版本必須在控制面板中啟用(適用於 Windows)或通過伺服器管理器啟用(適用於 Windows Server),該標記顯示在“包含在/可安裝在 Windows 中”和“包含在/可安裝在 Windows Server 中”列。

.NET Framework 版本CLR 版本功能包含在 Visual Studio 版本中✓ 包括在內
+ 可在其上安裝
Windows
✓ 包括在內
+ 可在其上安裝
Windows Server
確定已安裝的 .NET 版本
4.7.1 4 - 支持 .NET Standard 2.0。
- 支持配置生成器,允許在運行時創建配置文件。
- 運行時功能檢查,使你能夠確定運行時環境中是否支持預定義的功能。
- 可序列化值元組。
- 垃圾回收性能改進。
- 支持可移植的 PDB。
- 對 Message.HashAlgorithm 的 SHA-2 支持。
- 支持使用 HttpCookie.TryParse 方法分析 ASP.NET cookie。
- 支持針對 ASP.NET 窗體身份驗證憑據的 SHA-2 哈希處理。
- 針對應用開發者的大量輔助功能改進;請參閱 .NET Framework 中輔助功能的新增功能
  ✓ 10 Fall Creators Update 

+ 10 創意者更新 
+ 10 周年更新 
+ 8.1 
+7
+ 2016 
+ 2012 R2 
+ 2012 
+ 2008 R2 SP1
使用 ReleaseDWORD:

- 461308(Windows 10 創意者更新) 
- 461310(所有其他操作系統版本) 

(請參閱說明
4.7 4 - 支持由操作系統提供的 TLS 支持級別。
- 能夠為 TLS1.1 或 TLS1.2 配置預設的消息安全設置。 
- 提高了 DataContractJsonSerializer 的可靠性。 
- 提高了 WCF 應用程式序列化和反序列化的可靠性。 
- 能夠擴展 ASP.NET 對象緩存。 
- 支持基於 WM_POINTER Windows 消息(而不是 WPF 應用程式的 Windows Ink 服務平臺 (WISP))的觸控/觸筆堆疊。 
- 使用視窗的列印文檔包 API 在 WPF 應用程式中進行列印。
- 增強了對 Windows 窗體應用程式(在 Windows 10 創意者更新上運行)的高 DPI 和多監視器支持。
  ✓ 10 創意者更新 

+ 10 周年更新 
+ 8.1 
+7
+ 2016 
+ 2012 R2 
+ 2012 
+ 2008 R2 SP1
使用 ReleaseDWORD:

- 460798(Windows 10 創意者更新) 
- 460805(所有其他操作系統版本) 

(請參閱說明
4.6.2 4 - 加密增強功能,包括對包含 FIS 186-3 DSA 的 X509 證書的支持、對持久化密鑰對稱加密的支持、對 SHA-2 哈希的 SignedXml 支持,提高了 ECDiffieHellman 密鑰派生常式輸入的清晰度。
- 對於 Windows Presentation Foundation (WPF) 應用,支持屏幕鍵盤和按監視器 DPI 感知。
- 對 TLS 1.1 和 TLS 1.2 協議的 ClickOnce 支持。
- 支持將 Windows 窗體和 WPF 應用轉換為 UWP 應用。
  ✓ 10 周年更新

+ 10 十一月更新 
+ 10 
+ 8.1
+ 7
✓ 2016

+ 2012 R2
+ 2012
+ 2008 R2 SP1
使用 ReleaseDWORD:

- 394802(Windows 10 周年更新)
- 394806(所有其他操作系統版本)

(請參閱說明
4.6.1 4 - 對包含 ECDSA 的 X509 證書的支持
- 對 ADO.NET 中的硬體保護密鑰的始終加密支持
- WPF 中的拼寫檢查改進
更多...
  ✓ 10 November Update

+ 10
+ 8.1
+ 8
+ 7
+ 2012 R2
+ 2012
+ 2008 R2 SP1
使用 ReleaseDWORD:

- 394254(Windows 10 十一月更新)
- 394271(所有其他操作系統版本)

(請參閱說明
4.6 4 - 使用 .NET Native 編譯
- ASP.NET Core 5
- 事件跟蹤改進
- 對頁面編碼的支持
更多...
2015,儘管部分 .NET 庫可在 NuGet 上獲取。 有關詳細信息,請參閱 .NET Framework 和帶外版本 ✓ 10
+ 8.1
+ 8
+ 7
+ Vista
+ 2012 R2
+ 2012
+ 2008 R2 SP1
+ 2008 SP2
使用 ReleaseDWORD:

- 393295 (Windows 10)
- 393297(所有其他操作系統版本)

(請參閱說明
4.5.2 4 - 用於事務系統和 ASP.NET 的新 API
- Windows 窗體控制項中的系統 DPI 調整大小功能
- 分析改進
- ETW 和壓力日誌記錄改進
更多...
- + 8.1
+ 8
+ 7
+ Vista
+ 2012 R2
+ 2012
+ 2008 R2 SP1
+ 2008 SP2
使用 ReleaseDWORD:379893
(請參閱說明
4.5.1 4 - 對 Windows Phone 應用商店應用的支持
- 自動綁定重定向
- 性能和調試改進
更多...
2013 ✓ 8.1
+ 8
+ 7
+ Vista
✓ 2012 R2
+ 2012
+ 2008 R2 SP1
+ 2008 SP2
使用 ReleaseDWORD:

- 378675 (Windows 8.1)
- 378758(所有其他)

(請參閱說明
4.5 4 - 對 Windows 應用商店應用的支持
- WPF、WCF、WF、ASP.NET 更新
更多...
2012 ✓ 8
+ 7
+ Vista
✓ 2012
+ 2008 R2 SP1
+ 2008 SP2
使用 ReleaseDWORD:378389
(請參閱說明
4 4 - 擴展的基類庫
- 使用可移植類庫的跨平臺開發
- MEF、DLR、代碼協定
更多...
2010 + 7
+ Vista
+ 2008 R2 SP1
+ 2008 SP2
+ 2003
請參閱說明
3.5 2.0 - 啟用 AJAX 的網站
- LINQ
- 動態數據
更多...
2008 ✓ 10✓ 8.1
✓ 8*
✓ 7
+ Vista
✓2008 R2 SP1
+ 2012 R2
+ 2012
+ 2008 SP2
+ 2003
請參閱說明
3.0 2.0 - WPF、WCF、WF、CardSpace - ✓ Vista ✓ 2008 R2 SP1
✓ 2008 SP2*
+ 2003
請參閱說明
2.0 2.0 - 泛型
- ASP.NET 添加項
更多...
2005 - ✓ 2008 R2 SP1
✓ 2008 SP2
✓ 2003
請參閱說明
1.1 1.1 - ASP.NET 和 ADO.NET 更新
- 並行執行
更多...
2003 - ✓ 2003 請參閱說明
1.0 1.0 .NET Framework 的第一個版本。 Visual Studio .NET - - 請參閱說明

通常,你不應卸載電腦上安裝的 .NET Framework 的任何版本,因為你使用的應用程式可能依賴於特定版本,如果你移除該版本,則應用程式可能會中斷。 你可以在一臺電腦上同時載入 .NET Framework 的多個版本。 這意味著,你可以安裝 .NET Framework 而無需卸載早期版本。 有關詳細信息,請參閱入門

面向並運行 .NET Framework 版本 4.5 和更高版本的應用

.NET Framework 4.5 是替代電腦上的 .NET Framework 4 的就地更新,同樣,.NET Framework 4.5.1 4.5.2、4.6、4.6.1、4.6.2、4.7 和 4.7.1 是對 .NET Framework 4.5 的就地更新,這意味著它們將使用相同的運行時版本,但是程式集版本會更新並包括新類型和成員。 在安裝其中某個更新後,你的 .NET Framework 4、.NET Framework 4.5、.NET Framework 4.6 或 .NET Framework 4.7 應用應繼續運行,而無需重新編譯。 但是,反過來則不行。 建議不要在較早版本的 .NET Framework 上運行面向更高版本的 .NET Framework 的應用。 例如,我們建議你不要在 .NET Framework 4.5 上運行面向 .NET Framework 4.6 的應用。 以下準則將適用:

  • 在 Visual Studio 中,可以選擇 .NET Framework 4.5 作為項目的目標框架(這將設置 GetReferenceAssemblyPaths.TargetFrameworkMoniker屬性)以將項目編譯為 .NET Framework 4.5 程式集或可執行文件。 此程式集或可執行文件隨後可用於安裝了 .NET Framework 4.5、4.5.1、4.5.2、4.6、4.6.1、4.6.2、4.7 或 4.7.1 的任何電腦。

  • 在 Visual Studio 中,可以選擇 .NET Framework 4.5.1 作為項目的目標框架(這將設置 GetReferenceAssemblyPaths.TargetFrameworkMoniker 屬性)以將項目編譯為 .NET Framework 4.5.1 程式集或可執行文件。 此程式集或可執行文件應只在安裝了 .NET Framework 4.5.1 或 .NET Framework 更高版本的電腦上運行。 將阻止面向 .NET Framework 4.5.1 的可執行文件在僅安裝了 .NET Framework 的早期版本(例如 .NET Framework 4.5)的電腦上運行,並且系統會提示用戶安裝 .NET Framework 4.5.1。 此外,不應從面向 .NET Framework 的早期版本(例如 .NET Framework 4.5)的應用中調用 .NET Framework 4.5.1 程式集。

    此處使用的 .NET Framework 4.5.1 和 .NET Framework 4.5 僅作為示例。 此原則適用於任意滿足以下條件的應用:應用所面向的 .NET framework 版本高於運行該應用的系統上的 .NET framework 版本。

.NET Framework 中的某些更改可能需要更改應用代碼;請先參閱應用程式相容性,然後再使用 .NET Framework 4.5 或更高版本運行現有應用。 若要瞭解如何安裝當前版本,請參閱安裝面向開發人員的 .NET Framework。 有關對 .NET Framework 的支持的信息,請參閱 Microsoft 支持網站上的 Microsoft .NET Framework 支持生命周期策略

以針對早期版本的應用程式為目標並運行這些應用程式

.NET Framework 版本 2.0、3.0 和 3.5 是使用同一 CLR 版本 (CLR 2.0) 生成的。 這些版本表示單個安裝的連續層。 每個版本將基於早期版本以增量方式生成。 無法在電腦上並行運行版本 2.0、3.0 和 3.5。 在安裝 3.5 版時,你將自動獲得 2.0 和 3.0 層,並且為版本 2.0、3.0 和 3.5 生成的應用程式均可在 3.5 版上運行。 但是,.NET Framework 4 會結束此分層方法。 從 .NET Framework 4 開始,可使用進程內並行承載在單個進程中運行 CLR 的多個版本。 有關詳細信息,請參閱程式集和並行執行

此外,如果你的應用程式面向 2.0、3.0 或 3.5 版,你的用戶可能需要先在 Windows 8 或 Windows 8.1電腦上啟用 .NET Framework 3.5,然後才能運行應用程式。 有關詳細信息,請參閱在 Windows 10、Windows 8.1 和 Windows 8 上安裝 .NET Framework 3.5

後續步驟

請參閱

版本相容性 
Microsoft .NET Framework 支持生命周期策略 
安裝和卸載 .NET Framework 受阻疑難解答

註冊表版本位置:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full中Release值


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 開源bitcms內容管理系統,經過幾個版本的更新和客戶的使用已經基本上完善了。採用Entity Framework 6 + MVC5開發。資料庫由原來的Sqlite升級為mysql,主要考慮系統要適用中小型系統。 ...
  • 1.首先創見Core控制台應用程式 並且引入 AspNetCore.All 首先我們寫入配置信息:直接代碼如下 接下來是讀取 我們上面寫入的配置信息 //GetSection 讀取對象類型的配置信息 Bind 綁定信息 var user = new User(); Console.WriteLine ...
  • 一些小的C/S項目(winform、WPF等),因需要訪問操作資料庫,但又不能把DB連接配置在客戶端上,原因有很多,可能是DB連接無法直接訪問,或客戶端不想安裝各種DB訪問組件,或DB連接不想暴露在客戶端(即使加密連接字元串仍有可能被破解的情況),總之都是出於安全考慮,同時因項目小,也無需採用分散式 ...
  • 前言 上一篇《 "一步一步創建ASP.NET MVC5程式\[Repository+Autofac+Automapper+SqlSugar\" ][1]》,我們完成了: 引用SqlSugar 使用SqlSugar對Repository類的改造 併成功使用PostRepository來查詢到了數據,今 ...
  • 前言: 在本系列第一篇《 "一步一步創建ASP.NET MVC5程式\[Repository+Autofac+Automapper+SqlSugar\" ][1]》中,我為大家介紹了搭建空白解決方案以及在此解決方案中創建目錄和對應的項目。本篇將和大家一起學習在項目中使用Nuget引入.NET對應的M ...
  • Excel表格中的迷你圖表能夠直觀地向我們展示出數據的變化趨勢。本文將介紹C#如何實現為表格數據生成迷你圖表,以及修改和刪除迷你圖表的方法。下麵將詳細講述。 所用組件工具:Spire.XLS for .NET 原Excel圖表: 一、添加迷你圖表(折線圖、柱形圖、盈虧圖) 1.添加命名空間 2.主要 ...
  • 1.引言 2.解決方案各部分介紹圖 3.添加數據模型 4.添加資料庫上下文 5.修改配置文件 6.使用依賴關係註入容器註冊資料庫上下文 7.添加基架工具並執行初始遷移 1.引言 NetCore出來有一段時間了,跨平臺、開源、高性能 讓每個從事.net的開發者都興奮了一把,對此我也有濃厚的興趣。 2. ...
  • 這篇是對象與集合操練,物件的創建,集合的一些基本功能,如添加,編輯,刪除等功能。 對象,即是網店的商品物件,Insus.NET只為其添加2個屬性,物件的ID的Key和名稱ItemName以及2個構造函數,最後一個方法是重寫ToString()方法。 class Item { private int ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...