一般情况下对IT管理者来说,在SharePointFarm中维护Feature,更喜欢使用命令行实现,这样可以省去登录到具体站点的操作。比如IT接到enduser的一个需求,要开启SiteCollectionFeature,如果直接操作......
2023-01-12
最近,自己也在学习写一些SharePoint的部件,也就是使用对象模型,下面,介绍一下自己刚刚写的小测试程序,不足之处,还请指正。
1、 新建项目
Vs2008 – 新建 – 项目 – 类库 – 输入名字 – 确定,即可
2、 添加引用
当然,很多功能都不是咱自己写的,咱需要的多数是调用,尤其对于SharePoint本身的操作,因为有对象模型啊。右侧“解决方案资源管理器”引用,右键添加MicroSoft.SharePoint(这个东东在C:Program FilesCommon FilesMicrosoft Sharedweb server extensions12ISAPI下面),因为使用对象模型,肯定需要这个了。然后在前面using里面添加
using Microsoft.SharePoint.WebPartPages;
然后在public class showlist:WebPart前面添加下面代码,为的是使我们定义的参数可以跑到右侧设置部件的地方去。
[ToolboxData("<{0}:WPToolPaneTest runat=server></{0}:WPToolPaneTest>"), XmlRoot(Namespace = "WPToolPaneTest")]
然后是添加强名称密钥
如图图1
3、 下面可以先编译一下我们的部件,然后可以看看,我们的部件能发布到SharePoint网站中么?!先把dll拷到bin下,然后添加SafeControl串
<SafeControl Assembly="showlist, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d6671b1a0bc0b78d" Namespace="showlist" TypeName="*" Safe="True" />
再说说那个PublicKeyToken怎么找到,可以用反编译工具,当然也可以用vs2008自带的工具,VS2008命令提示,输入sn –T 然后把dll拖进来,回车,记得-T后面敲个空格。
发布部件,就不用我说了吧,相信大家都很了解,不知道你们找到我们写的部件没有,我是找到了,添加进来看看有问题木有!
4、 好了,添加进去,一切OK!下面我们添加属性
就是这么一段代码
private string _ListName = "部件测试";
[Browsable(true), Category("显示列表"), FriendlyName("显示列表"), WebPartStorage(Storage.Shared), DefaultValue(""), Description("请输入显示列表")]
public string ListName
{
get
{
return _ListName;
}
set
{
_ListName = value;
}
}
5然后就是现实的部分了,我们要用protected override void Render()函数
里面是
#region输出列表内容
SPSite mySite = SPContext.Current.Site;
SPWeb myWeb = SPContext.Current.Web;
SPList myList = myWeb.Lists[this.ListName];
SPQuery myQuery = new SPQuery();
myQuery.Query = "<OrderBy><FieldRef Name='Created' Ascending='False' /></OrderBy>";
SPListItemCollection myListItemCol;
myListItemCol = myList.GetItems(myQuery);
writer.Write("<table width="100%" border="0" cellspacing="0" cellpadding="0">");
for (int i = 0; i <= 6; i++)
{
writer.Write("<tr>");
writer.Write(myListItemCol[i]["Title"].ToString());
writer.Write("</td></tr>");
}
#endregion
5、 然后重新编译一下,配置一下列表名称,就可以现实出来了
结果
ps:好了,基本上显示出来我的部件了,因为自己也是初学者,希望有不正确或不准确的,还请大家指正,大家共同交流,共同提高。
相关文章
一般情况下对IT管理者来说,在SharePointFarm中维护Feature,更喜欢使用命令行实现,这样可以省去登录到具体站点的操作。比如IT接到enduser的一个需求,要开启SiteCollectionFeature,如果直接操作......
2023-01-12
我们经常会在SharePoint网站集的权限列表中看到某个user有LimitedAccessPermission,但是我们都知道或者试过,在SharePointsitecollection中没有办法直接添加user赋予LimitedAccess权限,并且LimitedAccess这个......
2023-01-12
在这样的场景下,比如统计员工的个人信息,IT会在SharePoint中新建list,加一些需要填写的栏位,然后让公司员工登录填写。这时候比起大家都能看到彼此信息而言,从公司角度更想让员工只能......
2023-01-12
大多数企业使用SharePoint文档库时,都会建议EndUser在编辑文档前先做CheckOut动作,这样可以保证文档在当前用户编辑过程中,其他人只能view而不能edit,防止多人同时修改同一文件互相影响的......
2023-01-12
为了记录SharePointLibrary/List中file/Item的修改情况,ITAdministrator会在List/Library的VersionSettings中开启Version管控设置。之后用户每次编辑item/file保存就会生成一个新的version记录,这样我们就会知道......
2023-01-12