在 IIS 中创建 VirtualPath 以在 SharePoint 中托管 Web 服务
我正在尝试在 SharePoint 2007 (WSS 3.0) 中托管自定义 Web 服务,到目前为止,我已按照此处的说明创建了一个简单的“Hello World”Web 服务: 创建 WSS Web 服务
但是,当我在步骤 4 中到达虚拟路径位时,我很难在 Visual Studio 中看到我如何创建它,然后部署以创建虚拟路径以使我的 Web 服务可访问。
任何人都可以帮助我解决为 WSS 创建虚拟路径的问题,或者为我指明在 SharePoint 中创建和托管 Web 服务的另一指南的方向吗?
提前致谢...
I am trying to host a custom web service in SharePoint 2007 (WSS 3.0) and so far I have followed the instructions here to create a simple 'Hello World' web service: Create WSS Web Service
However, when i get to the virtual path bit in step 4 I am struggling to see in visual studio how I create this and then deploy to make a virtual path to make my web service accessible.
Can anyone help me sort out creating a virtual path for WSS or point me in the direction of another guide to create and host a web service in SharePoint?
Thanks in advance...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要在configuration/system.web/httpModules下的web.config中注册该模块。
然后你可以把它放在你想要的任何目录中。如果您使用的是 WSS 3.0,请检查以前的虚拟路径提供程序的名称是否为“SPVirtualPathProvider”。如果您使用的是 MOSS 2007,请检查其名称是否为“CmsVirtualPathProvider”。
Daniel Larson 在他的书 开发服务 - 的第 11 章中做了很好的指导。 Microsoft 平台上面向 AJAX 应用程序。
执行此操作的最佳方法通常是使用 SPConfigModification 类的 FeatureEventReceiver。这样它就会推送到您场中的所有服务器。
You need to register the module in the web.config under configuration/system.web/httpModules.
Then you can put it in any directory you'd like. If you're using WSS 3.0 check to see if the previous virtual path provider has a name of "SPVirtualPathProvider". If you're using MOSS 2007 check to see if it has a name of "CmsVirtualPathProvider".
Daniel Larson does a decent job of walking you through it in Chapter 11 in his book Developing Service-Oriented AJAX Applications on the Microsoft Platform.
The best way to do this is normally a FeatureEventReceiver using the SPConfigModification class. This way it pushes out to all the servers in your farm.
例如,您可以在 _layouts 文件夹中托管 Web 服务。只需在那里创建一些文件夹(例如“MyService”),放入 .asmx,然后将 Web 服务 .dll 放入 GAC 中(不要使用隐藏代码)。重新启动 IIS,您的服务将在 http:///_layouts/MyService/.asmx 上可用。
You can host a web service in a _layouts folder for example. Just create some folder there (like "MyService"), put your .asmx, then put your web service .dll in GAC (don't use code behind). Restart IIS and you service would be available at http:///_layouts/MyService/.asmx.