2012-09-13 80 views

回答

1

的BizTalk - 重複的命名空間會的問題,但隨着IIS虛擬目錄爲界,應該沒有問題。

您可以通過MVC service routing使用多個端點註冊服務,並避免完全創建虛擬目錄。

ServiceHostFactory serviceHost = new ServiceHostFactory(); 
RouteTable.Routes.Add(new ServiceRoute("SoapService", serviceHost, typeof(SoapService))); 
RouteTable.Routes.Add(new ServiceRoute("directory1/SoapService", serviceHost, typeof(SoapService))); 
RouteTable.Routes.Add(new ServiceRoute("directory2/SoapService", serviceHost, typeof(SoapService))); 

如果您使用的是經典服務激活身體SVC文件,你應該能夠給每個虛擬目錄指向在SVC文件存在相同的物理位置。

+0

MVC路由不是一種選擇,因爲我們不打算對現有代碼進行任何更改。我們的部署將在IIS上使用經典的服務激活和虛擬目錄。 – WinFXGuy

+0

已驗證可以正常工作 - 只需確保將[虛擬目錄配置爲應用程序](http://www.tamilcodes.com/asp-net/converting-virtual-directory-into-an-application-to-run-asp -net-在-IIS /)。 – SliverNinja

2

從技術上講,服務不負責其託管,即.svc文件(或配置中的服務條目)。應該沒有理由會有任何問題,因爲每個實例都在不同的端點上。即使在相同的虛擬目錄中,人們也會這樣做,在每個端點上使用不同的綁定多次託管相同的服務。例如,我的安全服務具有相同的服務,端點具有不同的安全性,具體取決於您是否要使用用戶名/密碼,Windows身份驗證或現有令牌進行身份驗證。

相關問題