Type のフィールドを持つClassA
タイプを含むプロパティを持つクラスがあります。これを WCF 経由でシリアル化しようとすると、再帰的な性質のために例外が発生しました。解決策は、 のデータ コントラクト定義に追加することでした。 ClassB
ClassA
IsReference=true
ClassA
これは素晴らしいことですがClassA
、属性でマークされているメンバーがありDataMember(IsRequired=true)
、一度追加すると、両方にすることはできず、メンバーを持つIsReference=true
ことができないと不平を言いました。 IsReference=true
IsRequired=true
なぜこれが起こるのか理解できません。これに対する回避策があるかどうかを知りたいですか?
xml で必要になるようにデータメンバーを宣言したいのですが?
この投稿はすでに見ましたが、答えはまだはっきりしていません。デフォルト値が発行されないようにしたい場合は、 EmitDefaultValues=false を IsRequired=true と一緒に使用できます (とにかくやりたいことです)。別の回避策はありますか?