我在想如何在Visual Studio中的客戶端項目可以引用沒有mex綁定的WCF服務。每當我刪除任何示例WCF服務中的默認mex綁定時,客戶端應用程序都找不到該服務,並且在自動生成的註釋中,建議在生產環境中,應該刪除mex綁定。那麼客戶端應用程序應該如何找到該服務並引用它?引用沒有mex綁定的WCF服務
4
A
回答
0
mex端點是WCF SOAP服務的必要組成部分。它使客戶端工具包能夠拉下WSDL並自動生成代理類。正如你所指出的,沒有它,客戶無法獲取信息來使用服務。如果您希望客戶能夠使用並找到您的服務,則應在服務生產時將其保留。
10
如果您有權訪問包含定義服務合同,操作和數據合同類型的程序集,那麼您可以使用ChannelFactory
即時創建代理。在這種情況下,您不需要檢索任何服務元數據,因爲您已經可以訪問調用該服務所需的所有信息。
例如
// Create service proxy on the fly
var factory = new ChannelFactory<IMyServiceContract>("NameOfMyClientEndpointInConfigFile");
var proxy = factory.CreateChannel();
// Create data contract
var requestDataContract = new MyDataContract();
// Call service operation.
var responseDataContract = proxy.MyServiceOperation(requestDataContract);
如果你有機會到服務端配置文件,這樣你就可以離開這裏的端點詳細信息複製到您的客戶端配置它也有幫助。
相關問題
- 1. WCF服務綁定
- 2. 綁定WCF服務
- 3. 在沒有服務引用的情況下調用WCF服務
- 4. 服務端WCF綁定
- 5. WCF服務綁定設置
- 6. 有沒有可能有一個WCF服務主機沒有綁定到任何特定的服務類型?
- 7. 使用WCF服務的Ninject Di綁定
- 8. WCF服務引用
- 9. WCF服務綁定wsHttp與基本沒有身份驗證
- 10. WCF服務w/BasicHttpBinding沒有MEX端點可以被絕對陌生人利用?
- 11. 在Windows 2008的Windows服務中託管WCF(mex endpoint)服務
- 12. 硒沒有服務器的Golang綁定
- 13. WCF服務的Web引用
- 14. 添加服務引用不適用於沒有SVC文件的WCF服務
- 15. wcf服務綁定中的相對url
- 16. WCF服務上的多個綁定
- 17. WCF服務沒有終點
- 18. WCF服務沒有響應
- 19. 將自定義的WSDL綁定到現有的WCF服務
- 20. SonarLint沒有看到服務器綁定
- 21. 爲什麼綁定元素沒有綁定到我的服務?
- 22. 綁定的服務沒有正確綁定
- 23. 服務引用VS程序集的引用,使用WCF服務
- 24. 引用WCF Web服務
- 25. 多個WCF服務引用
- 26. 引用WCF服務方法
- 27. WCF服務net.tcp綁定安全
- 28. WCF net.tcp綁定服務消費
- 29. WCF服務和TCP綁定問題
- 30. WCF 3.5服務和多個http綁定
謝謝喬。您提到了WCF SOAP服務,並且在我的腦海裏出現了另一個問題。 WCF是否提供SOAP以外的服務類型?當你說一個SOAP服務時,它意味着什麼? – user1137993 2012-01-15 04:48:33
Wcf支持SOAP和RESTful服務。肥皂服務提供了大量基於ws- *協議的功能(交易,安全等)。但它們往往更加複雜,通常需要客戶端工具包才能使用。 Restful服務開箱即用的功能更少,但更輕巧,更易於使用。使用哪個選項確實取決於您的應用程序 – 2012-01-15 05:02:27
這不是完整的故事 - 您可以擁有一個WCF客戶端,而無需自動生成客戶端代理。相反,您需要引用服務合約的彙編,並使用ChannelFactory爲您提供代理。當您撥打代理時,您的呼叫將使用客戶端配置文件中的傳輸和綁定等。請參閱@休的回答。 – saille 2014-01-16 21:04:16