您的位置:首页 > 其它

如何在Windows SharePoint Services中创建Web Parts (一)

2008-08-18 15:40 651 查看
文中大部分内容来自SharePoint Services 3.0 SDK
有两种方式:
一种方式是创建一个继承自System.Web.UI.WebControls.WebParts.WebPart的Web Part(SharePoint SDK中是推荐使用这种方式的),这个WebPart不仅可以在SharePoint Services中使用,也可以用于其他ASP.net程序中;
另一个方式是创建Windows SharePoint Services WebPart 类,也就是继承自Microsoft.SharePoint.WebPartPages.WebPart。这个WebPart只能在SharePoint Services中使用。

一、首先介绍第一种方式:创建一个基本的Web Part

Step 1:创建一个ASP.Net Web Part assembly.
启动Visual Studio 2005
创建一个c# class library项目,项目名称假定为HelloWorldWebPart
添加引用System.Web
在.cs文件中,将下面的代码复制过来。
using System;

using System.Text;

using System.Web.UI.WebControls.WebParts;

namespace MyWebPartLibrary

{

public class HelloWorldWebPart : WebPart

{

protected override void Render(System.Web.UI.HtmlTextWriter writer)

  {

writer.Write("Hello, World!");

}

}

}

注意此处使用的是System.Web.UI.WebControls.WebParts

现在可以编译此解决方案,会生成一个dll文件。

Step 2:将生成的dll文件放到bin或GAC(global assembly cache, C:/WINDOWS/assembly)

Bin目录是指SharePoint web application 跟目录下的bin目录,如:C:/Inetpub/wwwroot/wss/VirtualDirectories/80/bin。

Step 3:(可选)如果把dll放在bin目录下,设置安全属性(security attributes

找到SharePoint web application根目录下的web.config文件,修改trust level属性,如
<trust level="WSS_Minimal">


Step 4:
将生成的Web Part添加到SafeControls列表中


打开
SharePoint web application根目录下的web.config文件,在SafeControls中添加下面的语句:
<SafeControl Assembly="HelloWorldWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" Namespace="MyWebPartLibrary" TypeName="*" Safe="True" AllowRemoteDesigner="True"/>

注意此处,一定要仔细,我在测试时,把Assembly写成了Assemply,结果浪费了我几个小时去找错误。

关于如何查看PublickeyToken,可以网搜一下,最简单的方式是添加到GAC中,就可以直接查看了。

在全局程序集缓存中部署的应用程序必须具有强名称, 强命名可以直接右键单击工程,选择属性,然后选择Signing标签,选中sign the assembly,然后新建一个强名称,如key.snk。


Step 5:创建.webpart文件

打开http://myserver/_layouts/newdwp.aspx,其中myserver是SharePoint站点部署的服务器的名称。
此时你会看到MyWebPartLibrary.HelloWorldWebPart出现在列表中,在它前面的check box中打勾。
最后点击Populate Gallery,如果不出什么问题,Web Part应该已经添加到Team Site Gallery中。

Step 6:将Web Part添加到SharePoint站点中的页面上

导航到SharePoint站点
在要添加Web Part的页面中,点击Site Actions并选择Edit Page。
点击Add a Web Part,在随后出现的对话框中,点击底部的Advanced Web Part gallery and options。
打开Team Site Gallery,将HelloWordWebPart拖到页面上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐