moss 2007下web-part的配置

来源:互联网 发布:淘宝图片搜索不能用 编辑:程序博客网 时间:2024/05/22 03:34

 

1MOSS 2007 WebPart 开发步骤

为了使用MOSS 2007WebPart当然是必不可少的。无论是最简单的HelloWorld,还是复杂一些的Ad帐号更改的WebPart,开发与部署的步骤大体一致,在这里做个记录,以备查用(最近记性好像越来越差了)。

 

1)在项目中引入SharePointDLL

2)开发类继承于WebPart

3)复写CreateChildControlOnLoadRender等方法

4)为AssemblyInfo.cs文件添加[assembly: AllowPartiallyTrustedCallers()]

5)对项目进行强签名,新建Key.snk文件

6)修改生成DLL的地址,指向站点下的_app_bin目录

7)编译类库

8)使用Reflactor获取DLLAssembly名称,包括PublicKeyToken

9)在站点的web.config中增加SafeControl节点

10IISRESET

11)在网站内容管理的WebPart库中新增开发好的WebPart

12)在页面上添加新开发的WebPart

 

关于WebPart开发时的调试,可以在VS2005中的调试中选择附加到进程(w3wp.exe),设置断点,即可进行逐步的调试工作。

 

 

2.数据库配置:

 

打开在SPS服务器的虚拟目录中web.config文件,在该文件中有个节点:

<trustLevel name="WSS_Medium" policyFile="C:Program Files/Common Files/Microsoft Shared/Web Server Extensions/60/config/wss_minimaltrust.config"/>

该节点记录了wss_minimaltrust.config文件所在的目录,根据这个目录找到该文件。

 

       然后在wss_minimaltrust.config文件的<SecurityClass>节点中加入子节点:

<SecurityClass Name="SqlClientPermission" Description="System.Data.SqlClient.SqlClientPermission, System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>

      

       再在<PermissionSet>节点中加入子节点:

<IPermissionSet class="SqlClientPermission" version="1" Unrestricted="true"/>

 

 

3.结合AJAX技术,Web.config 配置:

 

1. 首先,在SharePoint服务器上安装ASP.NET 2.0 AJAX Extensions.

 

2. 修改SP站点web.config,c:/inetpub/wwwroot/wss/virtualdirectories/下会有对应站点占用端口号的文件夹,web.config就在这里:

  1)  <configSections>下添加

 

 

<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>

 

    2) <SafeControls>下添加:

 

<SafeControl Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI" TypeName="*" Safe="True" />

 

  3)  <httpHandlers>下添加:

 

 

<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" />

  4)  <httpModules>下添加:

 

<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

  5) <assemblies>下添加:

 

<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

  6) <pages>下添加:

 

<controls>

        <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

      </controls>

 7) <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" />

    </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>

 
原创粉丝点击