来自程序集'System.Web.Extensions'的类型'System.Web.UI.ScriptManager'中的方法'get_EnableCdn'没有实现。

43
请问有谁能解释这种语法解析错误:
“来自程序集'System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'的类型'System.Web.UI.ScriptManager'中的方法“get_EnableCdn”没有实现。”
我的开发电脑运行Windows 7、框架4.0和最新的Ajax工具包,网站在本地和测试服务器(win 2003、框架4.0和最新的Ajax工具包)上都可以正常运行,但是在生产服务器(同样是Win 2003)上就会出现问题。
具有讽刺意味的是,在生产服务器上升级到框架4.0后,网站几个月来一直很好,直到我尝试通过复制已发布的网站来推送更新时才出现了这个错误。 如果只是拷贝网站的工作副本到一个新目录并创建一个新的虚拟目录,也会出现这个错误。
重新安装VS2010也没有帮助。
无论如何,很多帖子都提到了用户升级到4.0并收到此错误消息,而这不是我的情况,所以我对此感到困惑,并希望得到您的帮助。
谢谢。
2个回答

89
我曾在一个Web应用程序中看到过这个错误,它是从Visual Studio 2005项目升级到Visual Studio 2010项目引起的。
解决方法是从web.config文件中删除以下部分:
<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
            <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
            <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
        </dependentAssembly>
    </assemblyBinding>
</runtime>

我不确定我究竟做了什么,问题已经解决了,感谢您的帖子。 - Risho
错误是在我进行 ASP.NET 3.5 -> ASP.NET 4.5 升级时发生的。您的解决方案解决了这个问题。谢谢。 - Scott Marlowe
刚刚通过从 web.config 中移除这个东西解决了我差不多一个星期都在研究的问题!谢谢! - Zack
2
你能详细说明一下发生了什么以及为什么删除这个部分会有帮助吗? - kodybrown
没有升级,只是将旧的IIS 5.0服务器复制到IIS 8.5。 - user1945782

-1

如果您正在使用.NET Framework 4.0+,那么很好,但如果您只是将现有应用程序从Windows Server 2003转移到Windows Server 2012,则可以将新站点运行的应用程序池从.NET Framework 4.0更改为2.0,并且将管道模式从集成更改为经典。 在Windows Server 2012上的新站点默认为.NET 4.0和集成。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接