2009-10-12 75 views
2

看來.NET 3.5在處理Web服務時強制使用SOAP 1.2模式,即使該服務在SOAP信封的模式中指定了SOAP 1.1。是否有服務引用識別SOAP 1.1的設置?使用來自.NET 3.5的SOAP 1.1 Web服務

編輯:問題是從Web服務返回到.NET 3.5客戶端的SOAP錯誤的格式。在SOAP 1.1中,將故障的第一個子元素設爲<faultactor>是可以接受的。在SOAP 1.2中,這不再有效 - 第一個子元素必須是<faultcode>。我看到的問題是,當SOAP 1.1 Web服務返回SOAP錯誤時,我會在.NET上收到一個異常,抱怨期望元素<faultcode>,但接收到<faultactor>。我認爲我們已經將問題縮小到了SOAP版本問題;我們現在正在測試建議的解決方案。

+0

請給你的意思的例子。你嘗試了什麼,效果如何? – 2009-10-12 16:16:43

+0

添加了一個示例。 – 2009-10-12 18:35:22

回答

5

如果您使用WCF將其設置在您的自定義綁定中。

<textMessageEncoding messageVersion="Soap11" /> 

如果你在這裏使用ASMX是一個很好的 blog

+0

這就是爲什麼我希望OP描述他所嘗試的 - 它應該在WCF中「正常工作」。 – 2009-10-12 16:27:08

+0

嗨加里,我們實際上不使用WCF - 我只是在Visual Studio中添加服務引用。我如前所述向客戶端添加了一個屬性,並希望能夠對問題進行排序。 – 2009-10-12 18:36:01

相關問題