2011-02-22 112 views
0

安裝.net 4.0後,我的.net 1.1應用程序失敗,我不知道4.0是否是原因。在1.1的machine.config最後,該應用程序報告了一個無法識別的system.data部分。 (我在VS2008調試器中運行它來找到它)。我註釋了該部分,無論如何它都是空的,應用程序又開始運行。該應用程序在xp,vista和win7-64上運行正常多年。安裝.net 4.0是否打破任何.net 1.1應用程序?

這是在machine.config中引起問題的部分:

<system.data> 
    <DbProviderFactories></DbProviderFactories> 
</system.data> 
+0

您是否問僅僅安裝.NET 4會更新所有現有的.config文件?你有沒有做任何事情導致.config文件被更新?我不確定你在問什麼。 – 2011-02-22 18:59:28

+2

你能粘貼導致問題的代碼嗎? – AndrewC 2011-02-22 18:59:54

回答

2

安裝1.1以外的任何.NET版本肯定會中斷.NET 1.1應用程序。這是因爲Microsoft以突破的方式修復了.NET 1.1中的一些錯誤。我相信安裝.NET 4.0還會安裝.NET 1.1中的一個或多個服務包,以便您可以看到其中一箇中斷。

0

萬一事情可能會GAC有關,請參閱:

.NET 4.0 has a new GAC, why?

而且,是有可能的是, machine.config中無法識別的system.data節被手動放在那裏?並且在CLR 4.0安裝之前沒有遇到麻煩?

+0

注意一旦開始使用Visual Studio 2010或更新版本。除非您使用.NET 4.0版本的`gacutil`來管理您的GAC'dll,否則您可能會遇到警告MSB3258:「主引用具有間接依賴性,其版本比版本」4.0.0.0「高「......」在當前的目標框架中「,這實際上很難弄清楚。相信我:-) – 2012-09-20 16:41:19

0

微軟已經聲明所有版本的.Net可以並行安裝而不會相互干擾(至少這就是他們在MSDN Live上所說的)。每個版本都安裝在separate directory中。

如果您在談論ASP.Net,那麼您必須考慮在IIS中爲您的應用程序配置了哪個版本。

相關問題