如何在IIS上托管wcf路由服务?

时间:2012-06-06 03:13:05

标签: c# .net wcf iis wcf-routing

所以这与我的问题here有关。

所以我已经运行了一个现有的wcf服务,托管在IIS上。我创建了一个路由器服务,它将对标头进行一些XPath过滤。因此,如果标头匹配,则转到service1。 现在,我在IIS上托管了我的路由器服务,我可以像http://iis.com/myrouter/router.svc/那样访问它并给我这个wsdl的东西。现在,当我尝试在service1上请求一个服务方法,如http://iis.com/myrouter/router.svc/general/getMyMethod?blah=blahblah。它给我一个404错误。顺便说一下,我使用了小提琴手。

在我通过提琴手的请求中,我添加了自定义标题,例如&#34; service_version:1&#34;。我在<namespaceTable>上使用了名称空间,但我不知道如何在我的请求中附加名称空间。无论如何,我主要担心的是如何让我的路由器服务在IIS上运行?

更新:我顺便使用System.ServiceModel.Routing.RoutingService。所以我想要完成的是路由服务。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

你很可能面对这个。无法以这种方式访问​​SOAP服务,因为它依赖于SOAP包。这是另一篇文章,应该引导你朝着正确的方向前进。但是,它导致你失败​​的方向是手动测试SOAP服务是可取的,可能是徒劳的。

然而,有一点需要注意的是,它会引导您使用WCF测试客户端 - 这是去我朋友的最佳方向,并且它非常易于使用。提供URL,它将完成剩下的工作。

Invoke soap wcf service in Fiddler like in Wcf test client

访问RESTful端点

如果您尝试测试RESTful端点,则问题可能围绕配置的路由。请参阅此链接以获取帮助 - 确保您的服务设置相同,因为他们使用的属性可以正确构建路由。请记住,您不会使用与SOAP端点相同的地址引用RESTful端点。

http://geekswithblogs.net/michelotti/archive/2010/08/21/restful-wcf-services-with-no-svc-file-and-no-config.aspx

您也可以查看此链接。

Hosting WCF soap and rest endpoints side by side