1

几个月前我们开始收到以下错误,它看起来像 mac os 6。有人可以帮我解释一下下面的问题吗?我们的网站上有很多部分渲染,但似乎 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.OnPageInitComplete(Object sender, EventArgs e) 在 System.EventHandler.Invoke(Object sender, EventArgs e) 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 在 System。 System.Web.UI.Page.ProcessRequest 处的 Web.UI.Page.HandleError(异常 e) System.Web.UI.Page.ProcessRequestMain(布尔 includeStagesBeforeAsyncPoint,布尔 includeStagesAfterAsyncPoint)(布尔 includeStagesBeforeAsyncPoint,

用户代理:Mozilla/5.0 (iPad; CPU OS 6_0_1 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A523 Safari/8536.25

4

1 回答 1

0

由于我整天都在做这件事,所以我想除了上面的评论之外,我还会发布我最终做的事情。看起来重要的浏览器功能是

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 应该如何工作。

于 2013-03-07T04:50:29.030 回答