.NET Framework 4.0を実行しているC#で構築されたコンポーネントからjavaで書かれたサードパーティのWebサービスを呼び出そうとしています。 WSDLはhereです。C#でJava WebサービスからSOAP応答を非直列化する
私の問題は、C#プロキシクラスがGetProjectsメソッドからの応答を正しく非直列化しないということです。なぜなら、プロジェクトのクラスを生成するためですが、レスポンスにはプロジェクトへの要素マッピングが含まれていないため、 xsi:type属性で指定されたProjectを持つ "item"要素。
問題の私の調査から、プロジェクトノードが<item xsi:type="ns1:Project" xmlns="" xmlns:ns1="http://v3.soap.api.indextools.com">
として戻ってきたが、プロキシが<Project>
を期待しているので、逆シリアル化が失敗しているように見えます。
サービス参照を追加するときにプロキシが自動的に生成されるため、Webサービスを変更する機能がないため、この問題のプロキシクラスを正しく非直列化するための回避策が不思議です応答。この問題は、GetProjectsメソッドにのみ分離されていません。私はサービスの他の方法と同じ問題を抱えることが予想されるため、これを世界的に解決する方法が評価されます。
プロキシがメソッドを呼び出すときに彼がエラーになると私は信じています。プロキシの結果を解析しようとしているときではありません。 – Ernesto