sharepoint 2013 如何创建一个webservice获取sharepoint列表数据
2015-09-03 12:18
543 查看
我们在做sharepoint 2013的项目开发过程中,有时候需要用到webservice,webservice的好处就是方便其它应用系统直接或间接地操作sharepoint的列表数据。下面我们通过一个例子,来学习下如何使用webservice.
1.以管理员身份运行,打开visual studio 2012,新建一个空web应用程序 WebServicesForGDC,点击确定。
2.在项目解决方案中,添加新项目,添加一个web服务,GDC_Webservices.asmx
3.在项目解决方案中,添加sharepoint.dll引用。
4.在程序中,添加一个方法,GetName(),代码如下:
usingMicrosoft.SharePoint;
using System;
usingSystem.Collections.Generic;
using System.Linq;
using System.Web;
usingSystem.Web.Services;
namespace WebServicesForGDC
{
///<summary>
/// GDC_Webservices的摘要说明
///</summary>
[WebService(Namespace ="http://tempuri.org/")]
[WebServiceBinding(ConformsTo =WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
//若要允许使用 ASP.NET AJAX从脚本中调用此 Web 服务,请取消注释以下行。
// [System.Web.Script.Services.ScriptService]
publicclassGDC_Webservices
: System.Web.Services.WebService
{
[WebMethod]
publicstring HelloWorld()
{
return"HelloWorld";
}
[WebMethod]
publicstring GetName()
{
string str ="";
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPSite site =newSPSite("http://win2012moss:6003");
SPWeb web =site.OpenWeb();
SPList list = web.Lists["用户通讯录"];
SPQuery query =newSPQuery();
SPListItemCollection sic =list.GetItems(query);
System.Data.DataTable dt =sic.GetDataTable();
if (dt.Rows.Count >0)
{
str = dt.Rows[0]["UserName"].ToString();
}
});
return str;
}
}
}
5.发布webservice到指定目录.
在项目解决方案中,右键点击发布,
点击新建。
点击确定
在发布方法中,选择文件系统选项。
选择目标位置
把目标位置放在gdcWebServices文件夹(其它文件夹目录也可以),点击打开。
最后点击发布
6.部署webservice到 IIS
打开信息服务IIS管理器,添加网站
填写网站名称,端口号8009,并且选择物理路径。
找到我们刚刚发布的webservice文件目录,点击确定
点击确定
7.配置webservice应用程序池
打开IIS应用程序池,找到gdcWebServices,点击设置应用程序池默认设置。
设置标识账号为网站集管理员,例如kw\mossadmin,点击确定
8.浏览gdc_Webservices.asmx文件,测试我们程序代码中的GetName()方法是否有效
点击方法GetName
点击调用
我们看到有一条数据,是通过程序,获取sharepoint列表中的一条数据。
证明我们做的webservice方法是有效的。接下来,就是如何在其它应用系统或者项目中,调用这个webservice,请参考下一篇文章
sharepoint 2013 如何调用自定义werbservice方法。
代码下载地址:http://download.csdn.net/detail/cxx2325938/9075641
1.以管理员身份运行,打开visual studio 2012,新建一个空web应用程序 WebServicesForGDC,点击确定。
2.在项目解决方案中,添加新项目,添加一个web服务,GDC_Webservices.asmx
3.在项目解决方案中,添加sharepoint.dll引用。
4.在程序中,添加一个方法,GetName(),代码如下:
usingMicrosoft.SharePoint;
using System;
usingSystem.Collections.Generic;
using System.Linq;
using System.Web;
usingSystem.Web.Services;
namespace WebServicesForGDC
{
///<summary>
/// GDC_Webservices的摘要说明
///</summary>
[WebService(Namespace ="http://tempuri.org/")]
[WebServiceBinding(ConformsTo =WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
//若要允许使用 ASP.NET AJAX从脚本中调用此 Web 服务,请取消注释以下行。
// [System.Web.Script.Services.ScriptService]
publicclassGDC_Webservices
: System.Web.Services.WebService
{
[WebMethod]
publicstring HelloWorld()
{
return"HelloWorld";
}
[WebMethod]
publicstring GetName()
{
string str ="";
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPSite site =newSPSite("http://win2012moss:6003");
SPWeb web =site.OpenWeb();
SPList list = web.Lists["用户通讯录"];
SPQuery query =newSPQuery();
SPListItemCollection sic =list.GetItems(query);
System.Data.DataTable dt =sic.GetDataTable();
if (dt.Rows.Count >0)
{
str = dt.Rows[0]["UserName"].ToString();
}
});
return str;
}
}
}
5.发布webservice到指定目录.
在项目解决方案中,右键点击发布,
点击新建。
点击确定
在发布方法中,选择文件系统选项。
选择目标位置
把目标位置放在gdcWebServices文件夹(其它文件夹目录也可以),点击打开。
最后点击发布
6.部署webservice到 IIS
打开信息服务IIS管理器,添加网站
填写网站名称,端口号8009,并且选择物理路径。
找到我们刚刚发布的webservice文件目录,点击确定
点击确定
7.配置webservice应用程序池
打开IIS应用程序池,找到gdcWebServices,点击设置应用程序池默认设置。
设置标识账号为网站集管理员,例如kw\mossadmin,点击确定
8.浏览gdc_Webservices.asmx文件,测试我们程序代码中的GetName()方法是否有效
点击方法GetName
点击调用
我们看到有一条数据,是通过程序,获取sharepoint列表中的一条数据。
证明我们做的webservice方法是有效的。接下来,就是如何在其它应用系统或者项目中,调用这个webservice,请参考下一篇文章
sharepoint 2013 如何调用自定义werbservice方法。
代码下载地址:http://download.csdn.net/detail/cxx2325938/9075641
相关文章推荐
- 我是运营,我没有假期
- 如何成为一名专家级的开发人员
- DB2数据库的安装
- C#实现把指定数据写入串口
- “传奇”图象数据存储方式
- 修复mysql数据库
- SQLServer 数据导入导出的几种方法小结
- MySQL数据备份之mysqldump的使用详解
- C#实现窗体间传递数据实例
- 给你的数据库文件减肥
- Oracle数据更改后出错的解决方法
- C#将Sql数据保存到Excel文件中的方法
- 把excel表格里的数据导入sql数据库的两种方法
- 用文本作数据处理
- 桌面中心(一)创建数据库
- 桌面中心(四)数据显示
- PHP+JS实现大规模数据提交的方法
- C#数据绑定(DataBinding)简单实现方法
- .NET微信公众号开发之公众号消息处理
- SQL Server Management Studio Express管理器 没有导入导出数据的向导的解决方法