博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
部署 Web Service 到 SharePoint Server
阅读量:6118 次
发布时间:2019-06-21

本文共 2127 字,大约阅读时间需要 7 分钟。

1)首先利用Visual Studio创建一个 Web Service,开发完成后结构如下:

2)然后将bin文件夹下的dll文件部署到SharePoint Server的GAC 中,即复制到C:\Windows\assembly\文件夹下。

3)将Web Service的 *.asmx 文件用记事本打开,将其中的代码

<%@ WebService Language="C#" CodeBehind="ClassName.asmx.cs" Class="YourNameSpace.YourClass" %>

改为如下代码

<%@ WebService Language="C#" Class="YourNameSpace.YourClass,YourNameSpace,Version=YourVersion,Culture=neutral,PublicKeyToken=YourPublicKeyToken" %>

其中YourNameSpace,YourVersion,YourPublicKeyToken可以通过在C:\Windows\assembly\右击dll文件的属性查看到,YourClass即为开发Web Service的类名。

4)将Web Service的 *.asmx 文件复制到 C:\ProgramFiles\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS 中,使用disco.exe(C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\文件夹下)工具去发现这个Web Service,以生成 .disco 和 .wsdl 文件,生成的文件也在C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\文件夹下,运行如下命令生成:

disco http://MyServerName/_layouts/WebServiceName.asmx

5)打开 .disco 和 .wsdl 文件,并将头部XML声明代码 (<?xml version="1.0" encoding="utf-8"?>) 替换为下列代码:

<%@ Page Language="C#" Inherits="System.Web.UI.Page" %><%@ Assembly Name="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %><%@ Import Namespace="Microsoft.SharePoint.Utilities" %> <%@ Import Namespace="Microsoft.SharePoint" %> <% Response.ContentType = "text/xml"; %>

6)将.disco 文件中discovery节点中的代码替换如下:

docRef=<% SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(SPWeb.OriginalBaseUrl(Request)),Response.Output); %> xmlns="http://schemas.xmlsoap.org/disco/scl/" />
xmlns:q1="http://tempuri.org/" binding="q1:HelloWorld" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
xmlns:q2="http://tempuri.org/" binding="q2:ServiceSoap12" xmlns="http://schemas.xmlsoap.org/disco/soap/" />

7)将.wsdl 文件中指定的 SOAP 地址替换如下:

/>
/>

8)将*.disco 和*.wsdl文件分别重命名为*disco.aspx 和*wsdl.aspx;

9)将*.asmx ,*disco.aspx 和*wsdl.aspx这三个文件一起复制到C:\ProgramFiles\Common Files\Microsoft Shared\web server extensions\14\ISAPI\文件夹下,然后就可以直接调用了,调用地址如下:http://MyServerName/_vti_bin/*.asmx

参考:

转载于:https://www.cnblogs.com/leolis/archive/2012/10/10/2718719.html

你可能感兴趣的文章
Halcon算子翻译——dev_set_check
查看>>
Python 字符串
查看>>
Django 0.4
查看>>
提取奖励办数据中人员信息(自用)
查看>>
vc 中调用COM组件的方法
查看>>
字符串查找
查看>>
如何让命令行支持PHP语法编译
查看>>
html代码
查看>>
神经网络公式推导
查看>>
java基础之集合&数组
查看>>
lib 和 dll 的区别、生成以及使用详解
查看>>
部署openssh服务器
查看>>
基于 Kong 和 Kubernetes 的 WebApi 多版本解决方案
查看>>
get-random生成电话号码
查看>>
Fabric密码保存
查看>>
【Android每日一讲】2012.11.02 全屏幕以按钮重写 - 动态产生按钮并最大化
查看>>
10折交叉验证(10-fold Cross Validation)与留一法(Leave-One-Out)、分层采样(Stratification)...
查看>>
IIS 7.5: HOW TO ENABLE TLS 1.1 AND TLS 1.2
查看>>
Node.js中针对中文的查找和替换无效的解决方法
查看>>
在刷新窗口时经常要调用重绘函数
查看>>