2011-08-16 221 views
5

我開發了一個由幾個程序集組成的.NET解決方案,其中大部分都是面向.NET Framework 2.0版的小型幫助程序集。其餘的程序集是MVC 3 Web應用程序,它們必須以.NET Framework 4.0版爲目標。除.NET和MVC框架之外,我的解決方案沒有其他外部依賴項。.NET 2.0程序集可以在.NET 4.0下運行嗎?

我的問題如下:當我將此解決方案部署到客戶時,是否必須部署兩個版本的.NET Framework,還是我可以部署版本4.0? .NET 2.0程序集可以在.NET 4.0下運行嗎?

+0

所有三個答案都同樣有效,但是,因爲我能接受只有一個,我接受了一個,這是第一次公佈。 – pyon

回答

3

您只需要最新版本。它向下兼容。

+0

這是一個合格的事實。在下面回答我的答案。 – mhvelplund

1

答案是肯定的,組件爲.NET 2.0開發的正確運行在.NET 4.0

7

是,鑲嵌在大會上.NET 2.0的依賴性組件自動轉換爲自己的4.0版本。但它運行的是那些從未測試過的程序集版本。它們高度兼容,但包含一些錯誤修復,這些錯誤可能會在不知不覺中依賴於它們。沒有人可以給你100%的保證。

試試吧。

+0

幸運的是,我的.NET 2.0程序集非常簡單。它們中的大多數只是普通的舊數據類型,即MVC應用程序的模型;而少數不只是POD類型的只是幫助程序類,它們從數據庫中檢索數據,並用它填充這些POD類型的實例。 – pyon

0

是和否(至少對於.Net 4.5)。雖然它是向後兼容的,則默認爲對關聯的.NET版本上運行代碼注意here

在.NET Framework 4.5和它的發行點都與建與早期版本的應用程序向後兼容的.NET框架。換句話說,使用以前版本構建的應用程序和組件無需修改就可以在.NET Framework 4.5上運行。但是,默認情況下,應用程序在開發它們的公共語言運行庫的版本上運行,因此您可能必須提供配置文件以使您的應用程序能夠在.NET Framework 4.5上運行。有關更多信息,請參閱本文前面的應用程序的版本兼容性部分。

添加MyLovely.exe.config文件後,一切都工作得很好:

<configuration> 
    <startup> 
    <supportedRuntime version="v4.0"/> 
    </startup> 
</configuration> 
相關問題