给其他系统提供集成,发现SharePoint自带的WebService各种不好使,索性就自己写一点,也当做自己学习的记录了。当然内容比较简单,希望大侠们不要介意,也不要骂我啊。好了,进入正题吧。
1、 首先,使用VS2008新建一个WebService的项目,选择Asp.net Web服务应用程序,然后输入项目名称
列表项-sharepoint自定义页面">
2、 添加引用
添加Microsoft.SharePoint.dll文件的引用,因为我们需要使用SharePoint的对象模型来读取列表信息,Dll文件的位置是C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\ISAPI\Microsoft.SharePoint.dll
3、 添加函数
函数前面写上[WebMethod]标记,然后定义我们自己需要的方法,方法的参数和返回值,在方法里面,写我们的调用,我的代码就是个简单的例子,返回的也都是String类型,如果操作失败,则返回为空。
GetListItem(string WebUrl,string ListName,int ID)//获取列表项,传参分别为网站地址、列表名、ID
public string GetWebID(string WebUrl)//获取网站的WebID属性
[WebMethod]
public string GetWebID(string WebUrl)
{
try
{
SPSite site = new SPSite(WebUrl);
SPWeb web = site.OpenWeb();
return web.ID.ToString();
}
catch (Exception ex)
{
return "";
}
}
[WebMethod]
public string GetListItem(string WebUrl, string ListName, int ID)
{
try
{
SPSite site = new SPSite(WebUrl);
SPWeb web = site.OpenWeb();
SPListItem item = web.Lists[ListName].Items[ID];
String rt = "标题:" + item["Title"].ToString() + "内容:" + item["内容"].ToString();
return rt;
}
catch (Exception ex)
{
return "";
}
}
4、 发布WebService后测试
发布到IIS以后,打开我们的WebService,可以看到我们的自定义的两个方法,都在WebService中了。