iPad 6_0_1 ScriptManager.SupportsPartialRendering ASP.Net
几个月前我们开始收到下面的错误,它看起来像MacOS6。有人能帮我解释一下下面的问题吗?我们的网站上有很多局部渲染,但asp.net似乎认为ipad 6_0_1无法处理 事件目标:ctl00$ScriptManager1 异常:System.Web.HttpUnhandledException 0x80004005:引发了类型为“System.Web.HttpUnhandledException”的异常。-->System.InvalidOperationException:页面正在执行异步回发,但ScriptManager.SupportsPartialRendering属性设置为false。确保在异步回发期间将属性设置为true。在System.Web.UI.ScriptManager.OnPageInitCompleteObject发送者处,在System.EventHandler.InvokeObject发送者处的EventArgs e处,在System.Web.UI.Page.ProcessRequestMain处的EventArgs e处,在区域同步点之前的布尔IncludeStages,位于System.Web.UI.Page.HandleErrorException e的System.Web.UI.Page.ProcessRequestMain布尔IncludeStages在区域同步点之前,位于System.Web.UI.Page.ProcessRequestBoolean IncludeStages在区域同步点之前,布尔值包括System.Web.UI.Page.ProcessRequest处的System.Web.UI.Page.ProcessRequestHttpContext上下文处的System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IEExecutionStep.Execute处的System.Web.HttpApplication.ExecutionStep执行,布尔值同步完成(&C)iPad 6_0_1 ScriptManager.SupportsPartialRendering ASP.Net,asp.net,ajax,ipad,scriptmanager,Asp.net,Ajax,Ipad,Scriptmanager,几个月前我们开始收到下面的错误,它看起来像MacOS6。有人能帮我解释一下下面的问题吗?我们的网站上有很多局部渲染,但asp.net似乎认为ipad 6_0_1无法处理 事件目标:ctl00$ScriptManager1 异常:System.Web.HttpUnhandledException 0x80004005:引发了类型为“System.Web.HttpUnhandledException”的异常。-->System.InvalidOperationException:页面正在执行异步回发
用户代理:Mozilla/5.0 iPad;CPU OS 6_0_1,比如Mac OS X AppleWebKit/536.26 KHTML,比如Gecko Version/6.0 Mobile/10A523 Safari/8536.25,因为我整天都在做这件事,所以我想除了上面的评论之外,我还应该发布我最后做了什么。看起来重要的浏览器功能是
ecmascriptversion=1.5
w3cdomversion=1.0
supportscallback=true
如果其中任何一个不存在,则不会创建Sys.WebForms对象
我最终在App_Browsers文件夹中创建了一个自定义浏览器文件:
<browsers>
<gateway id="IPad" parentID="Safari">
<identification>
<userAgent match="iPad" />
</identification>
<capabilities>
<capability name="ecmascriptversion" value="1.5" />
<capability name="w3cdomversion" value="1.0" />
<capability name="supportscallback" value="true" />
<capability name="supportsxmlhttp" value="true" />
</capabilities>
</gateway>
</browsers>
最后一个功能对于创建Sys.WebForms对象不是必需的,但是我不太确定如果没有XMLHttpRequest对象,Ajax应该如何工作。我也遇到了这个问题-看起来ASP.NET浏览器检测无法识别iOS 6.0.0以上的任何东西都不支持XMLHttpRequest。导致问题的其他UA字符串有:Mozilla/5.0 iPad;CPU OS 6_1_2,如Mac OS X AppleWebKit/536.26 KHTML,如Gecko Mobile/10B146,Mozilla/5.0 iPhone;CPU iPhone OS 6_1_2,如Mac OS X AppleWebKit/536.26 KHTML,如Gecko Mobile/10b146如果从自定义基本页继承所有页面,则可以重写OnPreInit方法以检查useragent是否包含AppleWebKit,如果是,则将ClientTarget属性设置为uplevel。这在我的情况下不起作用,因为我们在代码之外使用了一些不同的页面基类,因此我无法更改它,但它可能会修复您的问题,请参见