0

Web サービス参照 (サービス参照ではない) を追加すると、画像に示すように、名前が変更されたサフィックスが 1 として追加された同じ要素が取得されます。これにより、デバッグしようとするとエラーが発生します。内部例外は言う

Message=Types 'service.AddressType1' と 'service.AddressType' は両方とも、ネームスペース 'xxx' の XML タイプ名 'AddressType' を使用します。XML 属性を使用して、型の一意の XML 名や名前空間を指定します。

私はエラーを理解しており、別の名前空間を指定する必要があることを示すいくつかの異なるスレッドをここで既に見ましたが、プロキシ クラスのどこにも AddressType1 が定義されていません。私はAddressTypeしか持っていません。その AddressType1 などはどこから入手できますか? 他の誰かがそのエラーを受けましたか? ご協力いただきありがとうございます。

繰り返されるオブジェクト

4

2 に答える 2

1

この回答を見ましたか?既存の .Net クラスのシリアル化エラーの継承

この回答では、階層的な名前空間の問題についても説明しているため (そうしている可能性があります)、それが主な問題になる可能性があります:異なるサブ名前空間のクラスはすべて WSDL の最上位に表示されます

XmlTypeAttribute を指定する必要があるようです。レビュー用にコード サンプルを提供できますか?

于 2013-09-30T14:19:41.743 に答える
0

xsd2code ツールを使用して生成したプロキシ クラスを継承していました。問題は、このツールが親 xsd クラスの名前空間を正しく生成したことですが、他の親クラスによって共有/共通されている子のクラスを確認すると、名前空間フィールドが次のように空であることがわかりました。したがって、私のサービス参照には、質問に示されているように、1 つのサフィックスを持つ同じプロパティ/クラスが複数回ありました。これらの子/継承されたクラスに同じ名前空間を追加したところ、正常に機能し、繰り返されるプロパティはありませんでした。これが、同様の問題を抱えている他の誰かに役立つことを願っています。

 System.Xml.Serialization.XmlRootAttribute([Namespace]:="", IsNullable:=True), _
于 2013-11-18T13:23:27.263 に答える