C# WCF服务没有端点
运行WCF测试客户端时,出现错误: 错误:无法从中获取元数据 localhost:52875/controllerinfo.svc(如果这是Windows(R) 请访问您的通信基础服务 检查是否已在指定的位置启用元数据发布 地址。C# WCF服务没有端点,c#,wcf,wcf-client,C#,Wcf,Wcf Client,运行WCF测试客户端时,出现错误: 错误:无法从中获取元数据 localhost:52875/controllerinfo.svc(如果这是Windows(R) 请访问您的通信基础服务 检查是否已在指定的位置启用元数据发布 地址。 元数据 包含无法解析的引用: 本地主机:52875/controllerinfo.svc'。没有 在本地主机上侦听的端点:52875/controllerInfo.svc 我可以接受这个消息。这通常是由错误的 地址或SOAP操作。有关更多信息,请参阅InnerExce
元数据 包含无法解析的引用: 本地主机:52875/controllerinfo.svc'。没有 在本地主机上侦听的端点:52875/controllerInfo.svc 我可以接受这个消息。这通常是由错误的 地址或SOAP操作。有关更多信息,请参阅InnerException(如果存在) 细节 这是我的
web.config
文件
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</assemblies>
</compilation>
</system.web>
<system.serviceModel>
<standardEndpoints>
<webHttpEndpoint>
<standardEndpoint helpEnabled="true" automaticFormatSelectionEnabled="true" />
</webHttpEndpoint>
</standardEndpoints>
<services>
<service name="dev_FineReceiptsService.ControllersInfo">
<endpoint kind="webHttpEndpoint" contract="dev_FineReceiptsService.IControllersInfo" />
</service>
</services>
</system.serviceModel>
<connectionStrings>
<add name="FineReceiptsTestEntities" connectionString="metadata=res://*/FineTest.csdl|res://*/FineTest.ssdl|res://*/FineTest.msl;provider=System.Data.SqlClient;provider connection string="Data Source=msdev01;Initial Catalog=FineReceiptsTest;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
</configuration>
谁能告诉我我做错了什么
我试图找到类似的问题,但没有一个对我有帮助。您的服务是基于REST的服务(因为您指定了
webHttpBinding
)
但是,WCF测试客户端是一个基于SOAP的测试工具-您可以使用此-basicHttpBinding
,wsHttpBinding
等测试SOAP服务
但是您不能使用基于SOAP的WCF测试客户端来测试基于REST的WCF服务。。。那不行。使用常规web浏览器,可能与Fiddler或类似的东西结合使用,以测试REST服务。您的服务是基于REST的服务(因为您指定了
webHttpBinding
)
但是,WCF测试客户端是一个基于SOAP的测试工具-您可以使用此-basicHttpBinding
,wsHttpBinding
等测试SOAP服务
但是您不能使用基于SOAP的WCF测试客户端来测试基于REST的WCF服务。。。那不行。使用常规web浏览器,可能与Fiddler或类似的东西结合使用,以测试REST服务。元数据端点公开描述SOAP服务的WSDL+XSD。不支持为REST公开元数据。由于您正在使用webHttpEndpoint,因此无法使用WCFTestClient。用于测试Rest服务,也可以使用浏览器 如果需要使用简化配置向SOAP服务添加元数据,则需要添加以下行为:
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
元数据端点公开描述SOAP服务的WSDL+XSD。不支持为REST公开元数据。由于您正在使用webHttpEndpoint,因此无法使用WCFTestClient。用于测试Rest服务,也可以使用浏览器 如果需要使用简化配置向SOAP服务添加元数据,则需要添加以下行为:
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
我的理解是,我只是以错误的方式测试了服务,所以我在服务中没有错误,是吗?因为在本地浏览器中工作正常。@Big.Child:您使用的测试工具肯定不适合您的服务。您的服务是否有问题-我无法告诉您。。。。。但您不能对基于REST的WCF服务使用WCF测试客户端。我怎么理解,我只是以错误的方式测试了服务,所以我在服务中没有错误,是吗?因为在本地浏览器中工作正常。@Big.Child:您使用的测试工具肯定不适合您的服务。您的服务是否有问题-我无法告诉您。。。。。但不能对基于REST的WCF服务使用WCF测试客户端。