' System.ServiceModel.FaultException'在System.ServiceModel.dll中:过程不存在

时间:2015-11-14 02:19:04

标签: c# web-services wcf soap

如果Web服务工作多年,那么有一天它开始在生产中爆炸:

类型' System.ServiceModel.FaultException'的第一次机会异常。发生在System.ServiceModel.dll中 附加信息:程序' GetDoorToDoorRatesRequest'不存在。

每次出错。

WSDL显示该过程仍然存在,并在该过程中手动触发测试SOAP XML信封获得有效响应。

1 个答案:

答案 0 :(得分:1)

在我们的案例中,例外是误导性的:

  1. 有问题的类是一个Request Model类,而不是一个过程。

  2. 实际上是在场。

  3. 真正的问题是格式发生了变化;我们调用的服务器端已经更改了Request类的属性而没有更改主要版本号甚至次要版本号,并且没有警告我们。这意味着生产调用中断,错误消息令人困惑。

  4. 解决方案是从WSDL更新服务引用并重新编译。有趣的是,我们使用的现有属性都没有改变或被删除,所以异常基本上就在我们的路上。

    希望这有助于其他人!