.NET Framework 技術支援終止期限(EOS)整理
4 | 16,743 |
昨天提到 .NET 6 LTS 支援期為三年,預計 2024/11/8 EOS (End of Support),讓我想到「那 .NET Framework 呢?」這篇就來整理一下 .NET Framework 的技術支援終止時間。
本篇主要參考以下官方文件:
先釐清一個觀念,所謂 .NET 4.5.1 結束技術支援,不代表 .NET 4.5.1 編譯的程式不再享用技術支援,必須升級成更新版本。
延伸閱讀: 蛤,微軟停止.NET 4.0/4.5/4.5.1的技術支援?會對我的系統造成影響嗎?
.NET 4.X 採「就地相容」政策,Windows 升級 .NET Framework 版本後,原本的 .NET 4.X 程式可繼續執行,不需要重新編譯或調整。雖然實務上可能存在不相容,但情況極少,且多半是為了符合業界標準或修正錯誤,真的遇上也該乖乖調整程式,但不需要為此改變專案 .NET Framework 版本。 (當然,升級新版能享受新功能、解鎖新武器,且避免跟時代脫節。所以,升吧,哪次不升?)
因此,因應舊版 .NET Framework EOS,只需在 Windows 安裝新版 .NET Framework,舊版 .NET Framework 開發程式多半不用修改,便能改用新版 .NET Framework 執行,不會因此失去技術支援。
微軟網站有一份完整 .NET Framework 各版本發行及 EOS 時間清單:
Version | 開始日期 | 結束日期 |
---|---|---|
.NET Framework 4.8 | 2019年4月18日 | *1 |
.NET Framework 4.7.2 | 2018年4月30日 | *1 |
.NET Framework 4.7.1 | 2017年10月17日 | *1 |
.NET Framework 4.7 | 2017年4月11日 | *1 |
.NET Framework 4.6.2 | 2016年8月2日 | *1 |
.NET Framework 4.6.1 | 2015年11月30日 | 2022年4月26日 *2 |
.NET Framework 4.6 | 2015年7月29日 | 2022年4月26日 *2 |
.NET Framework 4.5.2 | 2014年5月5日 | 2022年4月26日 *2 |
.NET Framework 4.5.1 | 2014年1月15日 | 2016年1月12日 |
.NET Framework 4.5 | 2012年10月9日 | 2016年1月12日 |
.NET Framework 4.0 | 2010年4月12日 | 2016年1月12日 |
.NET Framework 3.5 Service Pack 1 | 2007年11月19日 | 2029年1月9日 *3 |
.NET Framework 3.0 | 2006年11月21日 | 2011年7月12日 |
.NET Framework 2.0 | 2006年2月17日 | 2011年7月12日 |
附註:
- [*1] 4.5.2 起,.NET Framework 被定義為 Windows 作業系統元件,支援週期與 Windows 一致。
- [*2] 4.5.2、4.6、4.6.1 因使用 SHA-1 雜湊數位簽章,近年被視為不夠安全,故將提早於 2022/4/26 EOS
- [*3] Windows 10 版本 1809 和 Windows Server 2019 開始,.NET Framework 3.5 SP1 被視為獨立產品,提供 5 年主要支援 + 5 年延伸支援,預設於 2029/1/9 EOS。至於更早期 Windows 上的 .NET 3.5 SP1 則視為作業系統元件,支援週期比照所在 Windows。
【小結】
- .NET 4.5.2、.NET 4.6、.NET 4.6.1 將於 2022/4/26 EOS,Windows 請提前安裝升級到 .NET 4.6.2、.NET 4.7.x 或 .NET 4.8。
- .NET Framework 採就地相容,安裝新版後,舊程式不需修改程式或重新編譯即可沿用 (僅有極少數不相容狀況需調整程式) 並繼續享有技術支援。
- .NET 3.5 SP1 及 .NET 4.6.2+ 被視為 Windows 的作業系統元件,支援週期比照所在的 Windows。
.NET Framework EOS list.
Comments
# by 路人甲
附註: [*1] 4.5.2 起 ==> 應該是 4.6.2,不是 4.5.2 ?
# by Jeffrey
to 路人甲,應該是 4.5.2 沒錯, https://dotnet.microsoft.com/platform/support/policy/dotnet-framework#whats-covered Beginning with version 4.5.2 and later, .NET Framework is defined as a component of the Windows operating system (OS).
# by mrhihi
[*2] 4.5.2、4.6、4.6.2 因使用 SHA-1 雜湊數位簽章 ..... 這邊是 4.6.2 應該換成 4.6.1 對嗎?
# by Jeffrey
to mrhihi,Yes,謝謝指正。