最佳做法开发一个服务中SharePoint?
-
16-10-2019 - |
题
我已经跟以下步骤,以建立一个网络服务在SharePoint:
- 创建一个新的项目使用WSPBuilder.
- 加入一个'服务'(添加一个新的网服务局的文件夹)
- 做一个WSBBuilder"部署"
- 该服务可以通过 http://server/_layouts/MyWebService.asmx
这是正确的?或者我应该按照所述的步骤在 MSDN 创造我自己的 .wsdl / .迪斯科 文件并将它们部署到 /_vti_bin 让我的服务可以通过 http://server/_vti_bin/MyWebService.asmx ?
(注:该手册的步骤,从MSDN可以自动使用 SPDev.
我也发现了这个:http://jamestsai.net/Blog/post/Where-do-you-deploy-custom-SharePoint-web-service-files-to-%28asmx-discoaspx-and-wsdlaspx%29.aspx 它描述了之间的差_layouts和_vti_bin.
的问题
什么是最好的方式吗?
和这怎么可能自动通过建立在VS2008或在部署期间从WSP?
解决方案 2
您在问题结束时引用的文章确实回答了:自定义Web服务应放置在_vti_bin中。
我通常从将它们添加到_layouts开始,但这仅仅是为了定义我的发现文件等(如您提到的MSDN规范中所述)。
我创建了一个简单的命令行工具,该工具从项目中的WebService Assembly(DLL)生成 *wsdl.aspx和 *Disco.aspx SharePoint兼容文件。
可以在 http://wsdlgenerator.codeplex.com .
从您的SharePoint Webservices项目中使用此功能时,请这样:
将以下行添加到 “邮政构建” 事件:
"$(ProjectDir)Tools\WSDLGenerator.exe" --input "$(TargetPath)" --outputfolder "$(ProjectDir)12\ISAPI" --spwsdl --spdisco
WSDL和迪斯科文件是自动创建并放置在ISAPI文件夹中的。
其他提示
这篇文章你参考,在结束你的问题真的答案:定义网服务应放在_vti_bin.
我通常会开始通过增加他们_LAYOUTS但是那只能定义我发现的文件等等(如MSDN规范你提到).
_vti_bin是一个虚拟目录中的映射到12/ISAPI文件夹,因此,可以部署到,使用元素的解决方案中的清单。看到一个例子 在这里,