2011-06-01 64 views
2

我有一箇舊的WCF 3.5 RESTful服務,這是在:WCF 4.0 - 如何將舊服務URL路由到新的服務URL?

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

我已經過遷移我的服務,現在居住在WCF 4.0 RESTful服務:

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

由於新的WCF 4.0在Global.asax中進行路由,它會自動爲我刪除.svc擴展名。我正在尋找一種方法將舊的基準網址路由到新的基準網址。我需要考慮到會有明顯的是服務的名稱,如

Service.svc/MyEndpoint?param1=param1Val 

這是可能的,如果是後多了,什麼是完成這個任務的最佳/最高效的方法是什麼?

感謝您的任何建議。

回答

1

您仍然可以同時具有.svc文件和基於路由的激活,對於相同的服務類別,因此對兩個地址的請求都會導致調用該服務。 .svc中的端點將使用<%@ ServiceHost%>指令或web.config中的Factory屬性進行定義,並且使用向ServiceRoute註冊的工廠定義來自路由的端點(svc-less) 。

+0

由於我使用的是WCF REST服務模板,因此沒有使用標記創建.svc文件。我不得不刪除我的班級,創建一個新的服務,將工廠添加到標記並將其連接到我的Global.asax中。我沒有必要修改我的web.config來完成這個更改。它開箱即用。 – Brandon 2011-06-01 14:13:57