SharePoint And Ajax Technology(3):SharePoint集成Ajax

SharePoint And Ajax Technology 3 ): SharePoint 集成 Ajax
网上关于在 SharePoint 中集成 Ajax 的文章也有很多了,本文算是我学习后的一个记录 J
SharePoint 中集成 Ajax 的功能并不复杂,只须要 8 个步骤便可。第一个是安装 Ajax 的支持,剩下七个则是修改须要提供 Ajax 支持的网站的 web.config 文件便可。
1 .安装 ASP.NET AJAX Extensions 1.0
2 .打开 SharePoint 网站集所在的 WebApplication 的目录。例如: C:\inetpub\wwwroot\wss\virtualdirectories\80 。并打开目录中的 web.config 文件。这里我推荐使用 VS 来编辑这个文件,理由是不容易出错,若是设置有错误则会有红色下划线的职能提示,并且有自动缩进,保证格式。在记事本里面却不能保证这些。
3 .在 <configSections> 标记中添加以下的 <sectionGroup> 元素。
< sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
 <
sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
     <
section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
     <
sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
     <
section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere" />
     <
section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
     <
section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
   </
sectionGroup>
 </
sectionGroup>
</
sectionGroup>
4 .在 <system.web>/<pages> 标记中添加 <controls> 部分。
< controls >
   <
add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</
controls>
5 .在 <compilation> 标记的 <assemblies> 元素中添加以下标记。
< add assembly="System.Web.Extensions, Version=1.0.61025.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
6 .在 <httpHandlers> 部分的最后注册 HTTP Handlers
< add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<
add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<
add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
7 .在 <httpModules> 部分中全部 module 以后添加注册下面的 HTTP Module
< add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
8 .在 <SharePoint>/<SafeControls> 中为 System.Web.Extensions 组件添加 SafeControl
< SafeControl Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI" TypeName="*" Safe="True" />
9 .最后,在 <configuration> 标记内的最低部(仅在 </configuration> 以前),添加以下内容。
< system.web. extensions >
   <
scripting >
     <
webServices >
     
<!-- Uncomment this line to enable the authentication service. Include requireSSL="true" if appropriate. -->
     <!--
       <authenticationService enabled="true" requireSSL = "true|false"/>
     -->
     <!-- Uncomment these lines to enable the profile service. To allow profile properties to be retrieved and modified in ASP.NET AJAX applications, you need to add each property name to the readAccessProperties and writeAccessProperties attributes. -->
     <!--
     <profileService enabled="true"
                     readAccessProperties="propertyname1,propertyname2"
                     writeAccessProperties="propertyname1,propertyname2" />
     -->
     
</ webServices >
     
<!--
     <scriptResourceHandler enableCompression="true" enableCaching="true" />
     -->
   
</ scripting >
   </
system .web. extensions >
   <
system. webServer >
   <
validation validateIntegratedModeConfiguration="false"/>
   <
modules>
     <
add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>d
   
</modules>
   <
handlers>
     <
remove name="WebServiceHandlerFactory-Integrated" />
     <
add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode"
          
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
     <
add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
     <
add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
   </
handlers>
</
system.webServer>
完成。
 
参考文章:
这个公司网站卖不少控件,呵呵,有支持 MOSS RadEditor ,文档里面也有关于如何使 SharePoint 集成 Ajax 功能的说明。

    或者你们能够参考Microsoft SharePoint Team Blog的文章Integrating ASP.NET AJAX with SharePoint,里面还提供了如何添加ScriptManager和一个使用UpdatePanel的小例子。
相关文章
相关标签/搜索