2011-03-06 224 views
1

我有一個WCF服務DLL,當我調試它會自動主辦,這個自定義URL映射的工作原理:自我URL映射託管WCF服務

[OperationContract] 
    [WebInvoke(Method = "GET", UriTemplate = "widget/{myid}")] 
    public Widget GetWidget(string myid) {... 

我的配置文件有:

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="true"> 
    <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=c03f5f7f11d50a3b" /> 
    </modules> 
    </system.webServer> 

不過,我想在我自己的服務中進行託管,因此我現在認爲它改用配置的system.serviceModel部分,因此我不能使用System.Web.Routing.UrlRoutingModule

我有自己託管的服務工作;但是,它會自動調用我的網址GetWidget而不是widget/{myid}。所以它沒有使用我的WebInvoke屬性。

如果我通過ServiceHost對象在我自己的Windows NT服務中手動託管我的WCF服務,如何仍然可以使用相同類型的映射支持自定義URL?

+0

您是如何配置服務主機的?添加你的system.servicModel配置部分和創建你的'ServiceHost'的代碼。 – 2011-03-06 09:16:37

+0

標準的基本HTTP。沒有模塊部分允許在該部分... – 2011-03-06 12:28:37

回答