【问题标题】:WCF "The server did not provide a meaningful reply"WCF“服务器没有提供有意义的回复”
【发布时间】:2011-02-08 13:11:17
【问题描述】:

我在这里没有想法,所以我希望有人可以提供帮助。这是我所拥有的:

  • 只有一个 basicHttpBinding 端点的 WCF 服务。
  • 只有一个服务接口,其他的[DataMember]、[FaultContract]都是具体类型。
  • 当我直接从 Visual Studio(使用 WCF 测试客户端或我的自定义应用程序)运行它时,一切正常(我发送请求并获得响应)。这通常需要一两秒钟。
  • 我已将其发布到 IIS 6 服务器。
  • 我可以成功打开http://server/WebService/WebService.svc?WSDL
  • 我可以成功打开http://server/WebService/WebService.svc/mex(输出和上面一样)
  • WCF 测试客户端和我的自定义应用可以成功添加服务引用
  • 每当我尝试调用服务方法时,它都会等待大约 15 秒,然后出现可怕的“没有意义的回复”错误。
  • 我运行了 Fiddler,得到了 202 的结果,这似乎是成功的。
  • 返回的字节数不超过 65536
  • 它返回一个数组,但它很小
  • 我尝试了远程调试,但无法正常工作,可能是由于防火墙的原因(但端口 80 已打开,我可以获取 WSDL)
  • 我启用了 system.diagnostics,什么都没有。
  • 我有一个 IErrorHandler,它通常会记录一些东西,什么都没有。

这是端点配置:

<endpoint address="" binding="basicHttpBinding" contract="Enterprise.IMyService" bindingNamespace="http://ourdomain.com/MyService/">
  <identity>
    <dns value="localhost" />
  </identity>
</endpoint>

还有什么我可以尝试的吗?这可能是某个地方的简单设置,但我无法弄清楚。

编辑:

原始提琴手响应:

HTTP/1.1 202 Accepted
Date: Thu, 15 Apr 2010 19:02:45 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Cache-Control: private
Content-Length: 0

【问题讨论】:

  • 我收到此错误是因为枚举未初始化为枚举“有效”值之一,即如果您的枚举只有 3 个元素,通常有效值为 0,1,2(除非您指定其他值)即使变量将接受枚举基础类型的任何值(通常是 Int32)

标签: wcf iis-6 endpoint basichttpbinding


【解决方案1】:

我想通了!它与 WCF 无关。当我将它移动到服务器时,数据库连接字符串不再有效。错误记录(到电子邮件)配置也不再有效并且正在吃异常。响应需要 15 秒,因为这是 SQL 服务器连接超时所用的时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-19
    • 1970-01-01
    • 1970-01-01
    • 2011-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多