我的應用必須安裝在我的客戶端的Web服務器上。有些客戶想使用SSL,有些客戶則不使用。我的應用程序有一個WCF服務,我目前必須進入每個安裝的web.config,並根據客戶端的SSL情況將安全模式從<security mode="Transport">
切換到<security mode="TransportCredentialOnly">
。我可以在運行時設置客戶端綁定。但是,我想知道是否有辦法在運行時(在服務器端)設置服務綁定。WCF在運行時在服務上設置綁定
1
A
回答
1
是的,絕對!這取決於你如何託管你的WCF服務。說它必須安裝在網絡服務器上,我會假設你在IIS中託管。
在這種情況下,您需要創建自己的ServiceHostFactory
後代 - 這真的沒什麼大不了的。
需要您的CustomServiceHostFactory
才能將您的ServiceHost
實例返回到IIS,並根據您的需要正確配置。
在自定義工廠的CreateServiceHost
方法中,您基本上設置了您的ServiceHost
並配置了它的所有端點,行爲,綁定等等 - 所有代碼都在您的完全控制之下。您可以根據需要做任何事情,根據需要配置您的服務。
爲了承載您的服務。你需要適應MyService.svc
文件包括CustomServiceHostFactory
作爲工廠使用:
<% @ ServiceHost Language="C#" Service="YourService"
Factory="CustomServiceHostFactory" %>
,這就是它!
檢查MSDN上了Extending Hosting Using ServiceHostFactory更多細節,看看在CodeProject上A Custom ServiceHostFactory文章的樣本。
相關問題
- 1. WCF服務綁定設置
- 2. 在WCF服務中設置綁定
- 3. 在運行時綁定網絡服務
- 4. WCF服務綁定 - 超時配置
- 5. 在運行時設置服務URL
- 6. 在WCF REST服務上設置Raygun
- 7. 在wcf服務電話上設置CultureInfo?
- 8. 在運行時創建WCF服務
- 9. 在運行時創建WCF服務
- 10. 長時間運行WCF服務的設置超時
- 11. WCF服務綁定
- 12. 綁定WCF服務
- 13. 在使用Autofac注入的WCF服務上配置綁定
- 14. 如何在Azure中創建WCF服務時配置webHttp綁定?
- 15. 在服務器上運行時爲類設置參數
- 16. 將WCF服務配置爲在IIS上運行6
- 17. WCF服務上的多個綁定
- 18. 在一個配置中配置多個WCF綁定或服務
- 19. 如何設置log4net,以便它可以在wcf服務上運行?
- 20. 如何設置每次服務運行時WCF測試客戶端將運行
- 21. 確定服務器上的WCF客戶端超時設置
- 22. 在WCF服務上運行svcutil.exe時出現OperationBehaviorAttribute錯誤
- 23. 在IIS 7中託管的WCF服務 - 綁定配置設置被忽略
- 24. Eclipse - 在「在服務器上運行」中選擇服務器與設置「目標運行時」
- 25. 服務端WCF綁定
- 26. 如何在Telerik radgrid使用wcf服務時設置wcf憑據?
- 27. IIS和服務之間的WCF TCP綁定設置
- 28. WCF serviceBehaviors vs綁定設置
- 29. WCF如何在自定義綁定上設置clientCredentialType
- 30. 在wcf服務中設置cookie