2015-11-14 47 views
1

有一個Web服務了多年的工作,然後有一天它開始生產炸燬:「System.ServiceModel.FaultException」:過程不存在

類型的第一次機會異常「系統.ServiceModel.FaultException'發生在System.ServiceModel.dll中 其他信息:過程'GetDoorToDoorRatesRequest'不存在。

每次都出錯。

的WSDL表明,該過程仍然存在,並且在手術發射測試SOAP信封XML手動得到有效的響應。

回答

1

在我們的情況下,唯一的例外是誤導:

  1. 類的問題是一個請求模型類,不是一個真正的程序。

  2. 它確實存在。

  3. 真正的問題是它在格式改變;我們所調用的服務器端已經改變了Request類的屬性而沒有改變主要甚至次要版本號,也沒有警告我們。這意味着一個破產的生產調用和一個令人困惑的錯誤消息。

解決方案是從WSDL更新服務引用並重新編譯。有趣的是,我們使用的所有屬性都沒有改變或被刪除,所以這個例外基本上只是我們的方式。

希望這可以幫助別人!