0
我已成功使用CUB調用Web服務,但我依賴於app.config中的配置。我想知道是否有可能通過代碼生成綁定,而無需向app.config添加任何條目。在不使用App.Config的情況下使用ClearUsernameBinding
我曾嘗試以下:
ClearUsernameBinding binding = new ClearUsernameBinding();
EndpointAddress address = new EndpointAddress("http://localhost:8087/SampleService/");
EchoServiceReference.EchoServiceClient client = new EchoServiceReference.EchoServiceClient(binding, address);
client.ClientCredentials.UserName.UserName = "yaron";
client.ClientCredentials.UserName.Password = "1234";
Console.WriteLine(client.EchoString("hi"));
,但我得到了錯誤:
Envelope Version 'EnvelopeNone (http://schemas.microsoft.com/ws/2005/05/envelope/none)' does not support adding Message Headers.
如果代替ClearUsernameBinding你使用BasicHttpBinding你會得到同樣的錯誤嗎? –
如果我嘗試使用由代碼創建的BasicHttpBinding,我會得到「Content Type text/xml; charset = utf-8不受服務http:// localhost:8087/SampleService /支持,客戶端和服務綁定可能不匹配。我試圖連接到您在CUB解決方案中包含的TestService。基於app.config創建CUB工作正常,但通過代碼創建CUB失敗,並在問題中發佈錯誤。有什麼不同?我需要通過代碼添加app.config的哪一部分? –
請給我一個重現問題的示例sln。你只需要客戶端代碼。 –