溫馨提示×

C# property 如何支持序列化

c#
小樊
91
2024-07-15 16:54:42
欄目: 編程語言

要使C#屬性支持序列化,需要在屬性上添加序列化屬性。可以使用[DataContract][DataMember]屬性來實(shí)現(xiàn)屬性的序列化。

例如:

using System.Runtime.Serialization;

[DataContract]
public class Person
{
    [DataMember]
    public string Name { get; set; }

    [DataMember]
    public int Age { get; set; }
}

在上面的示例中,Person類添加了[DataContract]屬性,并且NameAge屬性都添加了[DataMember]屬性。這樣就可以通過序列化器將Person對象序列化為XML或JSON格式。

另外,還可以使用XmlSerializerDataContractSerializer類來序列化C#對象。例如:

using System.Xml.Serialization;

public class Person
{
    public string Name { get; set; }

    public int Age { get; set; }
}

Person person = new Person { Name = "Alice", Age = 30 };

XmlSerializer serializer = new XmlSerializer(typeof(Person));
using (TextWriter writer = new StreamWriter("person.xml"))
{
    serializer.Serialize(writer, person);
}

在上面的示例中,Person類沒有添加任何序列化屬性,但是使用XmlSerializer類可以將Person對象序列化為XML格式。

0