按照SharePoint Team Bolg文章,文章中建议大家将<ScriptManager>放置到母版页中,原因是如果动态添加,有时并不能保证在页面生命周期中比依赖他的控件更早的添加到页面中,而且有时代码如果编写的不好会造成页面中出现多个<ScriptManager>实例,这对于AJAX技术来说是错误的,一个页面上仅能存在一个支持AJAX技术的<ScriptManager>。所以建议将<ScriptManager>放置在母版页中,而不是在代码中来动态加载它。

这篇文章里面建议在页面的<WebPartPages:SPWebPartManager '>

这里也有一个需要注意的地方,在更换母版页的时候千万记得加上<asp:ScriptManager runat="server" ID="ScriptManager1"></asp:ScriptManager>

default.master<WebPartPages:SPWebPartManager '>

继续说另外一个问题,就是文章里面提到直接添加这个<ScriptManager>标签,但是实际上这是不行的,我们需要在页面上引入对应的组件和命名空间,组件System.Web.Extensions已经在web.config中添加过了,所以这里只需要引入命名空间即可,如果不引用的话页面会识别不出<ScriptManager>而报错。

在页面<html>上面加入如下命名空间

<%@ Register TagPrefix="asp" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI" %>

 

 

相关文章: