天天看點

解決:編譯器錯誤消息: CS0433: 類型“System.Web.UI.ScriptManager”同時存在于

<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

如果機器上同時安裝了VS2008和VS2005,在用2005編譯AJAX項目時,可能會出現這樣的錯誤:

編譯器錯誤消息: CS0433: 類型“System.Web.UI.ScriptManager”同時存在于“c:/WINDOWS/assembly/GAC_MSIL/System.Web.Extensions/3.5.0.0__31bf3856ad364e35/System.Web.Extensions.dll”和“c:/WINDOWS/assembly/GAC_MSIL/System.Web.Extensions/1.0.61025.0__31bf3856ad364e35/System.Web.Extensions.dll”中

解決方案:

1.打開web.config,找到以下相關結點:

  <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

    <add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"></add>

    <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

    <add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

    <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

    <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

    <add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

2.将這些 Version=3.5.0.0結果注釋掉或删除,再重新編譯就可以了.

這是因為VS2005編譯的AJAX是1.0的,而VS2008能同時編譯AJAX1.0和其他版本的.是以會出現沖突.

出錯頁面提示資訊如下:

編譯錯誤

說明: 在編譯向該請求提供服務所需資源的過程中出現錯誤。請檢查下列特定錯誤詳細資訊并适當地修改源代碼。

編譯器錯誤消息: CS0433: 類型“System.Web.UI.ScriptManager”同時存在于“c:/WINDOWS/assembly/GAC_MSIL/System.Web.Extensions/3.5.0.0__31bf3856ad364e35/System.Web.Extensions.dll”和“c:/WINDOWS/assembly/GAC_MSIL/System.Web.Extensions/1.0.61025.0__31bf3856ad364e35/System.Web.Extensions.dll”中

源錯誤:

行 18:             </div>
行 19:         </div>
行 20:         <asp:ScriptManager ID="ScriptManager1" EnablePartialRendering="true" EnableScriptGlobalization="true"
行 21:             EnableScriptLocalization="true" runat="server">
行 22:         </asp:ScriptManager>