2016-03-30 36 views
0

我是一個組織,有幾百個.net應用程序,dll等已經寫了過去15年來新的。當我運行powershell腳本或ILdasm來查看exe,dll等目標的框架版本時,我經常會看到它們看起來像是有子版本的框架。因此,而不是看到V2.0,例如,我會看到V2.0.50727微軟的.net框架版本和顛覆

我的問題,一般有:

  1. 難道微軟推出了不同.NET框架與顛覆。因此,我們可能會看到2.0.50727和2.0.111和2.1.123等等,而不是隻看到一個主要版本,如2.0?

  2. 如果他們確實推出了不同的子版本,我似乎需要在我的開發機器上安裝幾十個不同的框架來更新舊系統(假設我不想更新他們的目標框架),而不是隻有主要的框架版本。對此有何想法?

+1

不計數現在不相關的.NET 1.x版本,只有兩個運行時版本。 2.0.50727和4.0.30319。你的機器上不能安裝幾十個框架版本。只有兩個。當您通過讓Windows Update執行其3.5毫秒和4.6.1版本的工作來更新機器時。它們與以前的修訂版本向後兼容,其中有太多無法計數的版本。大量的修改來修復錯誤和安全問題。不更新機器是一個錯誤。 –

+0

U有用的鏈接我發現添加更多信息:https://blogs.msdn.microsoft.com/davbr/2007/12/06/versions-of-microsoft-net-framework-clr-and-your-profiler/ – MichaelBowerman

回答

0

其他想法...

由於計算機上的任何後來框架將支持任何有針對性的框架(代碼)早於框架上的箱子,只要在計算機上的框架是高而不是代碼中的目標,它將起作用。

因此,如果一臺計算機已經Framework 4.0中安裝,它將支持目標1.0,2.0,2.1,3.5,4.0,等

但是應用中,仍有是否框架4.0的問題上框支持版本4.0.227(可能存在或不存在的假設版本)。

+1

我敢打賭,你沒有訪問維基百科來檢查.NET Framework的版本歷史。 CLR版本保持不變,2.0.50727或4.0.30319。微軟不會違反這一規定。但第四位數字可以更改以反映修訂。 –