私は、これがこのXMLとDataContractSerializer
<Foo>
<Bar>String from baz.ToString()</Bar>
</Foo>
のようなXMLを生成したいこの
[DataContract(Namespace = "")]
public class Foo
{
[DataMember(Order = 0)]
Bar bar;
}
[DataContract(Namespace = "")]
public class Bar
{
Baz baz;
[DataMember(Order = 0)]
string TheBaz
{
get { baz.ToString(); }
set { SomeOtherCode(value); }
}
}
のようなクラスを持っていますが、より多くのようなものを取得していますこれを修正するには? This articalは、DataContractSerializerの欠点の一つであることを述べていない:
- オブジェクトは不思議に私をリードする名前と注文
設定の外にシリアライズされる方法を制御すること、これはされています解ける問題ではありません。
私は、私はちょうどそれを行うコードを削除することになってるので、これはIXmlSerializable
とReadXml
/WriteXml
で行うことができます知られています。
しかし、どのようにこのシナリオでは、「バー」クラスの追加プロパティに対処するのでしょうか? –
これは*正確に*私はコードを取り除くとタックされています:) – BCS
@ marc_s&BCS:IXmlSerializableを実装すると、DataContractSerializerはその実装を出力に使用するので、実装者が何をするかを決める追加のプロパティ。 – casperOne