0

serializeでの方法と方法を学びdeserialize objectsましXMLC#。ここで、この機能をアプリケーションに追加したいと思いclassますobject。およびメソッドclassを含むを作成する必要がありますか?または、何かがあるべきですか?serializedeserializeInterface

これは通常どのように行われますか?

4

3 に答える 3

0

オブジェクトとシリアル化メカニズムを分離しておくのが最善です。DataContractSerializersは.Netでこれに適しています。これらを使用すると、(上記のコメントで述べたように)データ注釈をプロパティに指定して、実際のシリアル化を自動化できます。

于 2013-01-28T18:08:55.000 に答える
0

クラスがシリアル化のために十分に単純である場合、これを行うことができます。

using (FileStream stream = File.Create(filename)){
 XmlSerializer serializer = new XmlSerializer(typeof(MyRootClassHere));
 serializer .Serialize(stream, yourRootInstance);
}

出力をより適切に制御するには、XmlElement、XmlAttribute、XmlIgnore、XmlText属性を確認する必要がある場合があります。

 [XmlIgnore]
 public bool IgnoredBool{ get; set; }

 [XmlAttribute("NewXmlName")]
 public string RenamedProperty{ get; set; }

これで、ほとんどの部分を実行できるはずです。

于 2013-01-28T18:17:43.283 に答える
0

インターフェース (ISerializable) がありますが、存在し、あなたのために仕事をすることができるジェネリック クラスもあります。その場合、シリアル化するプロパティに適切な属性を配置する必要があります。

これに関するドキュメントが必要な場合は、こちらをご覧ください。

.Net には組み込みのシリアライザーがいくつかあります (BinaryFormatter および XmlSerializer

インターフェイスを使用する場合は、独自のメソッドを作成する必要があります

于 2013-01-28T18:09:14.647 に答える