我正在使用一个例子来做我的第一个wcf服务.. 我正在使用的是 this example
给我错误 未找到mex端点。
我在控制台主机中包含了appconfig文件,并包含以下代码
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="True"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
任何人都可以帮助我,因为我无法运行控制台主机......
答案 0 :(得分:0)
您是否真的为您的服务配置了mex端点?
这看起来像这样:
<service name="MyService" ...>
<!-- actual service endpoints here -->
<endpoint address="/mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
答案 1 :(得分:0)
我正在使用visual studio 2008和 框架3.5
这就是整个问题。您要引用的示例适用于WCF 4,它使用称为默认端点或简化配置的东西。在WCF 3.5中不存在这样的情况。您必须手动配置您的服务及其所有端点!
<system.serviceModel>
<services>
<service name="EmailService.EmailValidator" behaviorConfiguration="Metadata">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/" />
</baseAddresses>
</host>
<endpoint address="" binding="basicHttpBinding" contract="EmailService.IEmailValidator" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="Metadata">
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>