一般情况下对IT管理者来说,在SharePointFarm中维护Feature,更喜欢使用命令行实现,这样可以省去登录到具体站点的操作。比如IT接到enduser的一个需求,要开启SiteCollectionFeature,如果直接操作......
2023-01-12
在使用SharePoint2013的时候,如果其他客户端 API 的组合不足,可以通过自定义 Web 服务扩展 SharePoint。默认情况下,SharePoint 2013 不仅支持创建自定义 ASP.NET Web 服务,还支持创建自定义 WCF Web 服务。
在开始之前,简单描述一下创建自定义WCF服务的步骤:
Ø创建SharePoint空项目,选择场解决方案
Ø添加相关的应用程序集引用
Ø创建相关类和接口类,为其添加源代码
Ø创建ISAPI文件夹映射,在里面添加svc文件,并映射cs后台代码
Ø修改.csproj的程序文件,添加对于svc类型的支持
好了,让我们通过图文,了解SharePoint 2013中自定义WCF服务吧,可能描述较少,图文较多,因为创建的过程比较简单,示例代码也比较简单,主要还是创建的过程。
1、新建SharePoint空项目,如下图:
2、选择“部署为场解决方案”,如下图:
3、在我们的项目上,右键,添加新项,选择“常规 – 文本文件”,如下图:
使用以上方式,在项目中分别添加GetWebTitle.cs和IGetWebTitle.cs,作为WCF的服务和接口类;
添加完毕,如下图:
4、为项目添加ISAPI文件夹的映射,在项目上右键 – 添加 – SharePoint文件夹映射,选择ISAPI,点击确定,这一步比较简单,就不截图了;
添加ISAPI文件夹映射,在文件夹上右键 - 添加 - 选择文件夹,添加完毕后重命名为GetWebTitle;
添加GetWebTitle文件夹完毕以后,仿照步骤3在该文件夹下,添加GetWebTitle.svc文件,都添加完毕后的文件夹目录如下图所示:
5、为项目添加Microsoft.SharePoint.Client.ServerRuntime.dll的引用,当然,如果你的项目中已经存在这个引用,就可以忽略此步:
2010版本位置如下
%Windows%assemblyGAC_MSILMicrosoft.SharePoint.Client.ServerRuntime
2013版本的位置有所变动,如下
%Windows%Microsoft.NETassemblyGAC_MSILMicrosoft.SharePoint.Client.ServerRuntime
同时,为项目添加System.Runtime.Serialization 和 System.ServiceModel的引用,具体位置在单击“添加引用”,然后在“程序集 – 框架”选项卡上;
6、为IGetWebTitle.cs添加代码,如下:
7、为GetWebTitle.cs添加代码,如下:
8、为GetWebTitle.svc关联一下程序集,如下图:
9、都搞定了,可以部署一下,部署后位置如下图:
10、然后,右键这个文件,预览一下,可能会报错,是因为需要添加解决方案对SVC文件的支持,将项目卸载,编辑项目文件,如下图,添加支持svc类型文件:
11、再次访问这个WCF服务,如下图:
总 结
经过上面步骤,已经完成了SharePoint 2013中添加自定义WCF服务,WCF开发部分不是本文重点,所以也没有详细介绍源码,主要还是介绍在SharePoint解决方案中,封装WCF服务,特别要说,这样封装的WCF服务和SharePoint自带的基本相似。
相关文章
一般情况下对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