簡體   English   中英

無法在WCF應用程序中添加服務引用

[英]unable to add service reference in wcf application

問題:添加服務引用時->選擇地址http:// localhost:8000- >按GO

下載“ http:// localhost:8000”時出錯。
無法連接到遠程服務器
無法建立連接,因為目標計算機主動拒絕了127.0.0.1:8000
元數據包含無法解析的引用:“ http:// localhost:8000 /”。
http:// localhost:8000 /上沒有偵聽終結點的端點可以接受該消息。
這通常是由不正確的地址或SOAP操作引起的。
有關更多詳細信息,請參見InnerException(如果存在)。
無法連接到遠程服務器
無法建立連接,因為目標計算機主動拒絕了127.0.0.1:8000
如果服務是在當前解決方案中定義的,請嘗試構建解決方案並再次添加服務引用。

服務合同:

[ServiceContract(Namespace="http://www.thatindigogirl/2011/12")]
public interface IHelloIndigo
{
    [OperationContract]
    void DoWork();
}    

服務 :

public class HelloIndigo : IHelloIndigo
{
    public void DoWork()
    {
        throw new NotImplementedException();
    }
}

主機的app.config

 <system.serviceModel>
    <behaviors>
        <serviceBehaviors>
            <behavior name="serviceBehavior">
                <serviceMetadata httpGetEnabled="true" />
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <services>
        <service behaviorConfiguration="serviceBehavior" name="HelloIndigo">
          <host>
            <baseAddresses>
              <add baseAddress="http://localhost:8000" />
            </baseAddresses>
          </host>
          <endpoint address="HelloIndigoService" binding="basicHttpBinding"
                 name="basicHttp" contract="Host.IHelloIndigo" />
            <endpoint binding="mexHttpBinding"  name="mex"
                contract="IMetadataExchange" />                
        </service>
    </services>
</system.serviceModel>
  • 該解決方案從vs2008重建為vs2010,我在項目客戶端和宿主中都將框架更改為4.0。
  • 這些配置是由wcf配置向導完成的。

知道為什么客戶端項目無法找到主機端點來檢索元數據嗎?

提前致謝。

在修訂現有的Web odata服務,然后嘗試在Silverlight項目中建立對修訂后的服務的新服務引用時,我遇到了同樣的問題。 通過臨時注釋掉web.config文件中的身份驗證和授權部分,我能夠連接到元數據並將元數據從數據服務下載到我的Silverlight項目。 里克·莫爾頓

這可能是該服務未運行。

也可能是端口8000被阻止。

編輯:

根據您的評論,發現不適用於同一解決方案:這意味着項目類型有問題。

可以創建一個新的WCF項目,添加所需的服務,然后復制現有代碼。

我試圖做與您相同的事情,添加服務引用只是為了運行連接錯誤,因為當前服務未運行。

為了實現這一技巧,您需要打開兩個Visual Studio實例,並首先使用一個實例打開“添加服務引用”菜單。 打開菜單,在其他Visual Studio中,調試應用程序,以便服務運行。

服務運行時,在“添加服務參考”菜單中輸入地址,它將找到您的URL偵聽服務。 只有這樣,您才能選擇要引用的接口或類。

完成后,您可以停止調試,更改將生效。 您可能會收到一條警告,說您的項目已在編輯器外部被修改,只需單擊“確定”就可以了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM