使用Feature导入WebPart

 

使用Feature导入WebPart

自动化导入web part 的解决方案

1.问题的提出

    在我们安装完web part 之后,往往要通过手动的方式将web part 导入到SharePoint 库当中,这样的做法不是最终客户所需要的,所以我们需要使用一种自动化的导入web part 的方法。着这篇报告中我将使用一个Feature 将一个或多个web part 自动导入到SharePoint 中。

2.前期工作

    之前我们需要按常规方法使用vs 2008 写一个web part 。并给这个web part 做强签名。然后编译成一个dll. 之后使用gacutil 命令将其导入GAC中。 接着,在虚拟目录文件夹下的web.config(C:/Inetpub/wwwroot/wss/VirtualDirectories/9003/)文件的 里加入程序集:

过程如下:

Step1. 新建一个叫做 MyWebParts的 类库工程,并且添加入Microsoft.SharePoint 引用。新建一个叫做MyFirstWebPart的cs文件:

using System; 



using System.Collections.Generic; 



using System.Web; 



using System.Web.UI; 



using System.Web.UI.WebControls; 



using System.Web.UI.WebControls.WebParts; 



 



namespace MyWebParts{ 



public class MyFirstWebPart : WebPart 



{ 


protected override void CreateChildControls() 



{ 



Label label = new Label(); 



label.Text = "I am a label"; 



base.CreateChildControls(); 



this.Controls.Add(new LiteralControl("Hello, world4!")); 



this.Controls.Add(label); 



} 



} 



} 
Step2. 做强签名。然后Build 项目。 

Step3. 使用gacutil /i MyWebParts.dll 将 MyWebParts.dll 加入GAC中。

Step4.在web.config 文件的 标签下加入

PublicKeyToken可以在GAC中得到。

Step5. iisreset 重启iis

Step6. 打开SharePoint的根网站点击Actions 进入Site Settings ,再点击Web Parts,然后再点击New 你会看到:

将MyWebParts.MyFirstWebPart加入到web part库中,这样的目的是为了从库里导出webpart文件。

Step7. 回到web part 库页面点击导出webpart文件。

 

准备工作结束!

3. 编写自动化导入Feature

    进入SharePoint的经典12目录下(C:/Program Files/Common Files/Microsoft Shared/web server extensions/12 )的Template 目录,新建一个叫DWP的文件夹,然后在该文件夹下创建feature.xml文件,在这个文件里填入:

<Feature

  Id="6A05D54D-A7A3-48d2-BD6E-6EB25DB00943"

  Title="A demo feature to deploy My First Web Parts"

  Description="Demo to import webpart"

  Hidden="FALSE"

  Scope="Site"

  ImageUrl=""

  xmlns="http://schemas.microsoft.com/sharepoint/">

  <ElementManifests>

    <ElementManifest Location="elements.xml"/>

  </ElementManifests>

</Feature>

 

 

注意:Id号最好自己用guidgen自动生成。

在同个目录下再创建一个elements.xml的文件在里面填入:

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">

  <Module Name="MyFirstWebPart" Path="."

          List="113" Url="_catalogs/wp" RootWebOnly="true">

    <File Url="MyFirstWebPart.webpart" Type="GhostableInLibrary" >

      <Property Name="Group" Value="MyFirstWebParts" />

    </File>

  </Module>

</Elements>

接着把刚才的MyFirstWebPart.webpart 文件拷贝到该目录下,最后编写自动安装的importWP.bat文件:

@SET STSADM="c:/program files/common files/microsoft shared/web server extensions/12/bin/stsadm"

 

Echo Installing feature

%STSADM% -o InstallFeature -filename DWP/feature.xml -force

Echo Activating feature

%STSADM% -o activatefeature -filename DWP/feature.xml -url http://yourSPwebSite /

Iisrest

 最后的文件夹应该是这样的:

然后双击这个bat文件夹,一切搞掂。当要部署到其他服务器上的时候,按常规安装完webpart之后,点击运行这个文件,webpart就会自动安装到webpart库和group里面。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值