您的位置:首页 > 编程语言 > ASP

ASP.NET ajax 之updatepanel 失效

2010-09-26 17:32 357 查看
版本冲突:

编译器错误信息: CS0433: The type 'System.Web.UI.ScriptManager' exists in both 'c:/WINDOWS/assembly/GAC_MSIL/System.Web.Extensions/1.0.61025.0__31bf3856ad364e35/System.Web.Extensions.dll' and 'c:/WINDOWS/assembly/GAC_MSIL/System.Web.Extensions/3.5.0.0__31bf3856ad364e35/System.Web.Extensions.dll'

 

这时候要在web.config <configuration>里加上

<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>

 

好不容易搞到没有异常了- -

发现updatepanel加了跟没加一样,真是空欢喜一场

然后不停找找找原因,终于发现<xhtmlConformance mode="Legacy"/>闯的祸,

我实在想不明白这个web标准的设置跟ajax加载相关js有什么关系,可能微软觉得自己生成的js不够web标准,所以就只加载了一部分,以至于updatepanel失效,就算是这样,你也抛个异常出来啊!害我搞了半天没搞明白!

不过总算找到根源了.于是把那一节去掉.

到这里基本就好了,但是如果之前手痒痒在 <httpHandlers>里加了

        <add verb="*" path="WebResource.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
的话,就会出现

要处理此请求,必须在配置中注册 WebResource.axd 处理程序。

<!-- Web.Config 配置文件 -->

<configuration>
   <system.web>
       <httpHandlers>
           <add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
       </httpHandlers>
   </system.web>
</configuration>

这个时候大家都会奇怪,明明已经注册了 WebResource.axd 处理程序,干嘛还要加呢?????没错...世事往往就是这么难料,特别是跟微软有关的,处理方法就是把<add verb="*" path="WebResource.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>去掉-  -
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息