错误: “WebForm_DoPostBackWithOptions”未定义

  无论是ASP.NET WebForm 还是 ASP.NET MVC项目,在本地程序测试没问题,但是部署在IIS上访问就会出现  错误: “WebForm_DoPostBackWithOptions”未定义 ,问题出现在如果页面中没有表单验证控件,LinkButton运行后在IE中是调用 __doPostBack(...),如果页面中存在表单验证控件,LinkButton在IE中是调用 WebForm_DoPostBackWithOptions(...),这时如果没有.axd映射会出现问题。当然这也只是一方面的问题。

  也有可能是.NET 2.0和.NET 4一起发布的浏览器定义文件中的一个微软的错误,就说LinkButton控件(因为它包含JavaScript回调),在IE9来运行没问题,用IE10来运行就会出现上面说的问题,原因是ASP.NET不知道浏览器版本,也就是统一的降级处理,IE10这个BUG就不多说了,反正如果你用的是.Net 4.5 那就不会出问题,因为微软已经给解决了。下面把解决方案列举出来。聪明的你自己去一个一个试吧!一定可以解决的。

解决方案:

一、检查 IIS上是否添加 .axd  与 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll的映射。

二、去微软网站上下载KB2600088补丁可解决,下载后安装在服务器上。

      下载地址:    .NET 4 - http://support.microsoft.com/kb/2600088            .NET 2.0 - http://support.microsoft.com/kb/2600100

三、在需要使用LinkButton控件的页面中不使用验证控件,自己写程序进行验证。 或者将LinkButton的 CausesValidation设为"False",需要进行验证提交尽量使用  Button。 当然了你无

      法使用asp.net ajax。

posted @ 2014-06-25 14:16  ZevFang  阅读(2188)  评论(0编辑  收藏  举报