は、次のクラス(.NET 3.5)を有する:パブリックプロパティまたはフィールドを持たないパラメータのないコンストラクタを使用するXmlSerializer ...可能ですか?
public class Something
{
public string Text {get; private set;}
private Something()
{
Text = string.Empty;
}
public Something(string text)
{
Text = text;
}
}
をこれがエラーなしでシリアル化しますが、それは公共のセッターを持っていないので、結果のXMLは、Textプロパティが含まれていません。
XmlSerializerにこれらのプロパティを含める方法がありますか?
ありがとうMarc、 これはうまくいくかもしれないが、私はこの属性について知らなかった。あなたが言及した2つの欠点は、それらが唯一のものであるか、他の邪魔されていることですか? –
多くの点で、それは/より良い/シリアライザです(それは新しいものですからそう望みます)が、目的は異なります。 xmlの厳密な制御が必要な場合は柔軟性がありません。しかし、データを直列化したいだけなら、それはうまくいくはずです。またはprotobuf-net; -pを試してください。 –
System.Runtime.Serializationへの参照を追加する必要があります(.NET 3.0から) –