如果在页面中构建AJAX功能,为什么会要求EnablePartialRendering属性为“false”?似乎适得其反。我已经在这里和那里读过一些可能想要做的事情,属性是假的。但我读过的内容毫无意义。
思想?
答案 0 :(得分:6)
我之前在测试中使用了该属性,强制使用完整的“黄色屏幕”来解决服务器端错误。以这种方式调试快速服务器端问题比检查事件日志中的错误或XmlHttpRequest的错误响应更容易。
此外, 的优点还在于防止注入MicrosoftAjax.js。我过去曾尝试过,希望我能将ScriptManager的脚本单独使用。不幸的是,不,它仍然注入了MicrosoftAjax.js。
答案 1 :(得分:4)
Eilon Lipton made a note of this issue(以及SupportsPartialRendering属性)在他的博客中。值得注意的是:
EnablePartialRendering适用于 页面开发人员。那就是 正在构建ASP.NET的人 页面并放置ScriptManager 它。他们决定是否这样做 对使用部分感兴趣 渲染功能。例如,对于 他们可能会优化目的 禁用部分渲染功能 完全防止任何额外的脚本 从下载。或者也许 调试他们想要的问题 暂时禁用UpdatePanels 做异步回发。
答案 2 :(得分:2)
因为并非所有的Web浏览器(通过一些严格的安全策略)都允许启用ajax的回发工作,所以在构建多个公司/公司可以使用的集中式应用程序时,更改此设置意味着该站点仍然可以在没有部分呈现的情况下工作为公司/公司或其他支持完整ajax的用户工作而无需构建两个版本的站点。
我发现EnablePartialRendering非常有用并节省了数百小时需要构建非ajax版本的网站,无论你多么厌恶或不同意,安全管理人员的思想很少或根本没有改变。大规模的国际公司不会改变政策,因此您的应用程序将在其互联网域中为其员工工作。