找不到默認端點元素

我已將代理添加到VS2008 / .NET 3.5解決方案的Web服務。 構造客戶端.NET時,會引起如下錯誤: web

在ServiceModel客戶端配置部分中找不到引用合同'IMySOAPWebService'的默認終結點元素。 這多是由於沒有爲您的應用程序找到配置文件,或者是在client元素中找不到與該協定匹配的端點元素。 app

搜索此錯誤告訴我在合同中使用完整的名稱空間。 這是帶有完整名稱空間的個人app.config: 框架

<client>
  <endpoint address="http://192.168.100.87:7001/soap/IMySOAPWebService"
            binding="basicHttpBinding" bindingConfiguration="IMySOAPWebServicebinding"
            contract="Fusion.DataExchange.Workflows.IMySOAPWebService" name="IMySOAPWebServicePort" />
</client>

我在本地運行XP(我之因此這麼說是由於許多Google命中都提到了win2k3)app.config已複製到app.exe.config,因此這也不是問題。 單元測試

有什麼線索嗎? 測試


#1樓

若是您使用的是使用PRISM框架的WPF應用程序,則配置應存在於您的啓動項目中(即,引導程序所在的項目中)。 spa


#2樓

我曾經遇到這個問題。 這是由於我仍在開發使用WCF服務的接口。 我配置了測試應用程序並繼續開發。 而後在開發中,我更改了一些服務的名稱空間。 因此我仔細檢查了web.config中的「 system.serviceModel->客戶端->端點->合同」以匹配WCF類。 而後問題解決了。 代理


#3樓

這使我發瘋。 code

我在WCF中使用Silverlight 3 Prism(CAB) 接口

當我在棱鏡模塊中調用WCF服務時,出現相同的錯誤: 開發

在服務模型客戶端配置部分中找不到引用合同「 IMyService」的默認端點元素。 這多是由於沒有爲您的應用程序找到配置文件,或者由於在客戶端元素中找不到與該合同匹配的端點元素

事實證實,它是在Shell的.xap文件中查找ServiceReferences.ClientConfig文件,而不是在模塊的ServiceReferences.ClientConfig文件中。 我在個人Silverlight Shell應用程序中添加了端點並將其綁定到現有的ServiceReferences.ClientConfig文件(它稱爲它本身的WCF服務)。

而後,我必須重建Shell應用程序,覺得Web項目的ClientBin文件夾生成新的.xap文件。

如今這行代碼終於能夠工做了:

MyServiceClient myService = new MyServiceClient();

#4樓

請容許我再添加一件事。 ( 湯姆·海格的答案已經暗示了這一點,但我想明確地說)

個人web.config文件具備如下定義:

<protocolMapping>
    <add binding="basicHttpsBinding" scheme="https" />
</protocolMapping>

我已經使用basicHttpsBinding做爲一個引用,可是後來我添加了一個新的引用,該引用須要basicHttpBinding(否)。 我要作的就是將其添加到個人protocolMapping ,以下所示:

<protocolMapping>
    <add binding="basicHttpBinding" scheme="http" />
    <add binding="basicHttpsBinding" scheme="https" />
</protocolMapping>

正如LR正確指出的那樣,這須要在正確的位置定義。 對我來講,這意味着在個人單元測試項目的app.config中以及在主服務項目的web.config中。


#5樓

我在WCF服務已添加到類庫中的ASP.NET應用程序中收到此錯誤,該類庫已做爲bin文件夾中引用的.dll文件添加到ASP.NET應用程序中。 要解決該錯誤,須要將引用WCF服務的類庫中app.config文件中的配置設置複製到ASP.NET站點/應用程序的web.config設置中。

相關文章
相關標籤/搜索