我在IIS7下运行WCF服务。可以在http://myserver.domain.com/myservice.svc
处访问它我不想更改此文件的实际位置或名称,但我希望http://myserver.domain.com/this/here处理对http://myserver.domain.com/myservice.svc的调用
这可能吗?
答案 0 :(得分:0)
是的 - 使用.NET 4你可以非常轻松 - 使用.NET 3.5,它可能,但更多的工作。
在.NET 4中,您可以使用无文件激活,它允许您在web.config中定义逻辑URL - 不再需要* .svc文件。但在这种情况下,您不能再使用带有* .svc文件的“旧”URL(因为不再有SVC文件)。
<configuration>
<system.serviceModel>
<serviceHostingEnvironment>
<serviceActivations>
<add relativeAddress="this/here" service="IYourService"/>
</serviceActivations>
</serviceHostingEnvironment>
</system.serviceModel>
</configuration>
在A Developer's Introduction to WCF 4
上阅读有关此内容和其他新WCF 4功能的所有内容对于.NET 3.5,只有重写URL的方法 - 一种相当棘手的方式 - 在MSDN library中阅读更多关于它的信息,或者参阅Scott Guthrie的blog post。