如何在控制台应用程序

问题描述:

我正在学习WCF托管WCF服务。所以我创建了wcf项目,并且有一个类。代码如下现在如何在控制台应用程序

namespace TestWcfService1 
{ 
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "Service1" in code, svc and config file together. 
public class Service1 : IService1 
{ 
    public string GetData(string value) 
    { 
     return string.Format("You entered: {0}", "Welcome " + value); 
    } 

} 
} 

当我试图WCF服务引用添加到我的控制台应用程序,如添加服务引用和这样HTTP服务网址://本地主机:21541/Service1.svc然后我出现错误元数据包含无法解析的引用:'http:// localhost:21541/Service1.svc'。

,所以我只是不能够达到我的目的。我知道一些我错过了什么,这就是为什么我得到错误。所以请指导我如何将服务参考添加到控制台应用程序。 app.config会自动更新,或者我需要在那里写任何东西。请帮助。感谢

+0

您的服务_running_?参见[如何使用Web服务(http://johnwsaunders3.wordpress.com/2009/05/17/how-to-consume-a-web-service/) –

+0

我不知道如何检查服务运行或不。指导我 – Thomas

+0

所以,那将是“不”。 –

在配置上仔细检查该服务的行为设置为允许服务元数据:

<serviceMetadata httpGetEnabled="true"/>

,并在服务部分中添加元数据终结

<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>

编辑:实施例CONFI摹

<system.serviceModel> 
    <services> 
    <service behaviorConfiguration="BehaviorConfig" 
     name="[ServiceNameGoesHere]"> 
     <endpoint address="" binding="wsHttpBinding" contract="[ServiceContractHere]"> 
     </endpoint> 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    </service> 
    </services> 
    <behaviors> 
    <serviceBehaviors> 
     <behavior name="BehaviorConfig"> 
     <serviceMetadata httpGetEnabled="True"/> 
     <!-- To receive exception details in faults for debugging purposes, 
     set the value below to true. Set to false before deployment 
     to avoid disclosing exception information --> 
     <serviceDebug includeExceptionDetailInFaults="False" /> 
     </behavior> 
    </serviceBehaviors> 
    </behaviors> 
</system.serviceModel> 

有丹Rigsby的博客一个不错的书面记录称为WCF Metadata这也解释了更详细关于设立MEX端点(这是需要添加服务引用工作)。

+0

ü可以给我的样品进行的web.config WCF服务 – Thomas

+0

所有条目我以为web.config文件相关的所有条目将被自动添加,但我需要手工编写它自己。 – Thomas

+0

不需要。您必须使用正确的信息更新此文件。 – sjramsay

如果您的WCF服务项目在您的解决方案,你可以右键点击控制台应用程序,并说“添加服务引用”,然后点击“查询”按钮,应该找到它。
是的,配置文件需要更新行为和端点等。

看:WCF Metadata contains a reference that cannot be resolved

+0

我做到了,但遇到错误 – Thomas