WCF 4.0 - 如何将旧服务URL路由到新服务URL?

时间:2011-06-01 03:25:43

标签: c# .net wcf rest url-routing

我有一个旧的WCF 3.5 RESTful服务,位于:

http://www.mydomain.com/rest/Service.svc

我已将服务迁移到现在位于以下位置的WCF 4.0 RESTful服务:

http://www.mydomain.com/rest/Service

由于Global.asax中新的WCF 4.0路由,它会自动删除.svc扩展名。我一直在寻找一种方法将旧的基本URL路由到新的基本URL。我需要考虑到服务名称后面会有更多,例如

Service.svc/MyEndpoint?param1=param1Val

这是否可行,如果可行,完成此任务的最佳/最佳方式是什么?

感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

对于相同的服务类,您仍然可以同时拥有.svc文件和基于路由的激活,因此对这两个地址的请求将导致调用该服务。来自.svc的端点将使用<%@ ServiceHost%>上的Factory属性定义。指令或通过web.config,路由中的端点(svc-less)将使用在ServiceRoute中注册的工厂定义。