0

访问自托管 WCF 服务中的第二个端点时出现错误。下面是我的代码:

Uri HttpUri = new Uri("http://localhost:8092/MyService/HttpService");
ServiceHost host = new ServiceHost(typeof(PollService),HttpUri);
host.AddServiceEndpoint(typeof(ISub), myBinding, ""); //My binding is my custom binding and this end point is working fine.

host.AddServiceEndpoint(typeof(IFocus), 
    new BasicHttpBinding(),
    new uri("http://localhost:8092/MyService/Focusservice"));

ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
host.Description.Behaviors.Add(smb);
host.Open();

从代码中,我可以访问我的自定义绑定 url:

http://localhost:8092/MyService/HttpService`

但我无法访问:

 http://localhost:8092/MyService/Focusservice

在 WCF 测试客户端中访问它时,会引发如下错误:

错误:无法从中获取元数据http://localhost:8092/MyService/basicbinding
如果这是您有权访问的 Windows (R) Communication Foundation 服务,请检查您是否已在指定地址启用元数据发布。有关启用元数据发布的帮助,请参阅链接中的 MSDN 文档

交换错误。URI:http://localhost:8092/MyService/basicbinding元数据包含无法解析的引用:http://localhost:8092/MyService/basicbinding

内容类型应用程序/soap+xml;charset=utf-8 不受 service 支持http://localhost:8092/MyService/basicbinding

客户端和服务绑定可能不匹配。远程服务器返回错误:(415)无法处理消息,因为内容类型'application/soap+xml; charset=utf-8' 不是预期的类型 'text/xml; 字符集=utf-8'。

HTTP GET 错误。URI:http://localhost:8092/MyService/basicbinding下载时出错'http://localhost:8092/MyService/basicbinding'。请求失败,HTTP 状态为 400:错误请求。

4

0 回答 0