winform調用wcf服務遇到的問題及解決方案

一直都是用web掉用wcf服務的,前幾天公司要做一個自動測試的工具,需要在測試環境用winform調用測試的wcf服務,於是像web項目一樣,照常引用了wcf服務引用和公用dll。

開發自己測試 都沒有問題。於是WCF提交測試環境,於是問題來了 ,相同的winform項目調用本機的WCF服務無任何問題,但是調用測試服務器的WCF卻提示如下異常:

“未處理 System.ServiceModel.Security.SecurityNegotiationException
  Message="服務器已拒絕客戶端憑據。”

 

好吧,原本以爲是binding下的<security mode="Transport">節點配置的問題,可是改成mode="None“還是報相同的錯誤。

 

最終解決方案:

在 using (TestServiceClient client = new TestServiceClient())
                {

//最後在這個位置加了這三行代碼定義憑證數據 解決問題
                    client.ClientCredentials.Windows.ClientCredential.UserName = "administrator";//用戶名
                    client.ClientCredentials.Windows.ClientCredential.Password = "admin";//密碼
                    client.ClientCredentials.Windows.ClientCredential.Domain = ”192.168.1.100";//"(服務器地址)


                    response = client.Do(request);
                }

發佈了54 篇原創文章 · 獲贊 84 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章