2016-09-19 26 views
0

我們的Web服務器當前正在運行/利用運行在其上的應用程序的.NET 2.0。我使用ASP.NET和Visual Basic爲我的老闆創建了幾個網站;我對這個平臺很陌生,但我的網站已經非常出色。我只是簡單地使用Visual Studio來創建一個新的空ASP.NET Web應用程序,並從那裏開始。將項目從.NET 4.5重定向到.NET 2.0時,無法加載Microsoft.CodeDom.Providers.DotNetCompilerPlatform

他說他想切換到4.5,但我知道不想造成任何服務中斷。這讓我不得不將我的兩個Web應用程序重新定位到.NET 2.0。我目前遇到的唯一問題是個例外:

無法加載文件或程序集「Microsoft.CodeDom.Providers.DotNetCompilerPlatform,版本= 1.0.0.0,文化=中性公鑰= 31bf3856ad364e35」或一個的依賴關係。此程序集由比當前加載的運行時更新的運行時構建,無法加載。

我已經使用NuGet包還原(如網上說的),我必須手動「安裝,封裝/更新,包裝-reinstall」 Microsoft.CodeDom.Providers.DotNetCompilerPlatform,但它仍然拋出異常。我甚至創建了一個新項目,目標爲2.0,創建了Web Forms頁面,運行它,並且仍然收到錯誤。

任何幫助將不勝感激。可能只是我完全失蹤,因爲我對這個平臺很陌生。

+0

過去五到十年間,所有新功能都集中在.NET Framework 3.5及更高版本(特別是4.5及更高版本)上。如果你的老闆沒有意識到這個事實,我建議你提醒他/她。 –

+0

@LexLi他當然確實認識到需要改變,但幸運的是我的應用程序不依賴任何_after_ 2.0。 2.0之後我應該知道有什麼重大改進?我知道我的問題是由於DotNetCompilerPlatform在2.0之後的3年以後纔會出現。謝謝回覆! –

回答

0

雖然這並不能完全回答你的問題,但你需要知道同一個IIS服務器上的不同Web應用程序可以使用不同版本的.NET框架。

只需將每個Web應用程序設置爲使用不同的應用程序池,然後將應用程序池的框架設置爲您所需的。當然,它應該被設置爲應用程序的期望。

0

只是爲了回到這裏並且一勞永逸地關閉它,我不可能做我想做的事情。在4.5.2 .NET項目的代碼是由我在這個問題掛編,

Microsoft.CodeDom.Providers.DotNetCompilerPlatform

無論出於何種原因,重新定位到所需的.NET 2.0我做了一個新的項目,最初的目標是2.0(沒有重定向),然後將我的文件轉儲到項目。其中無縫工作。

相關問題