0
我有一個在IIS7下運行的WCF服務。它可以在http://myserver.domain.com/myservice.svc如何更改我的Web服務的邏輯URI?
我訪問就好了不想改變這個文件的物理位置或名稱,但我想http://myserver.domain.com/this/here調用由http://myserver.domain.com/myservice.svc
這是可能的處理?
我有一個在IIS7下運行的WCF服務。它可以在http://myserver.domain.com/myservice.svc如何更改我的Web服務的邏輯URI?
我訪問就好了不想改變這個文件的物理位置或名稱,但我想http://myserver.domain.com/this/here調用由http://myserver.domain.com/myservice.svc
這是可能的處理?
是的 - 對於.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>
閱讀所有關於這個問題和其他新的WCF 4的功能在A Developer's Introduction to WCF 4
對於.NET 3.5,有重寫你的URL的唯一方式 - 一個相當棘手的路要走 - 在閱讀更多關於它MSDN library或參閱Scott Guthrie的blog post就可以了。
我覺得必須有一種方法來使用.NET 3.5中的WCF來做到這一點。現在我知道我沒有開始尋找其他選項,如URL重寫。我們結束了與IIS7的URL重寫模塊。它現在似乎在工作。謝謝你的幫助。 – DarenTx 2010-07-11 20:40:00