我試圖調用第三方的web服務,它是用運行.net framework 4.0的C#構建的組件編寫的。 WSDL位於here。從C#中的java web服務反序列化SOAP響應
我遇到的問題是我的C#代理類不會正確反序列化來自GetProjects方法的響應,因爲它爲Project生成一個類,但響應中不包含映射到Project的元素,而是一個「項目「元素在xsi:type屬性中指定。
從我對這個問題的研究中可以看出,反序列化失敗了,因爲Project節點回來的時候是<item xsi:type="ns1:Project" xmlns="" xmlns:ns1="http://v3.soap.api.indextools.com">
,但代理的期望值是<Project>
。
由於代理是在添加服務引用時自動生成的,並且因爲我無法更改Web服務,所以我很好奇任何解決此問題的方法,以便正確解序列化我的代理類響應。此問題不是孤立於GetProjects方法。我希望在服務中遇到與其他方法相同的問題,因此我們將讚賞全球解決此問題的方法。
我相信當代理調用方法時,他會得到一個錯誤。不是在試圖解析代理結果時。 – Ernesto 2012-01-05 17:57:33