在C#中,可以使用[System.Serializable]或者使用DataContract和DataMember屬性來序列化實體類。
使用[System.Serializable]屬性:
[Serializable]
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
使用DataContract和DataMember屬性:
[DataContract]
public class Person
{
[DataMember]
public string Name { get; set; }
[DataMember]
public int Age { get; set; }
}
在序列化時,可以使用XmlSerializer或者DataContractSerializer類來序列化實體類對象:
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);
}
// 或者使用DataContractSerializer
DataContractSerializer dataContractSerializer = new DataContractSerializer(typeof(Person));
using (FileStream fileStream = new FileStream("person.xml", FileMode.Create))
{
dataContractSerializer.WriteObject(fileStream, person);
}
需要注意的是,若要序列化的類中包含其他類的實例,這些類也需要進行序列化的設置。