.NET Core C# XML序列化與反序列化

貼出實體類和工具類代碼,在想使用的地方直接調用工具類

{
    [XmlType("Person")]
    public class Person
    {
        /// <summary>
        /// 姓名
        /// </summary>
        [XmlElement("name")]
        [Required]
        [StringLength(20)]
        public string Name{ get; set; }

        /// <summary>
        /// 年齡
        /// </summary>
        [XmlElement("age")]
        [Required]
        public int Age{ get; set; }
    }
public class XmlConverter
    {
        public static string Serialize<T>(T obj)
        {
            XmlSerializer serializer = new XmlSerializer(typeof(T));
            StringWriter writer = new StringWriter(CultureInfo.InvariantCulture);
            serializer.Serialize(writer, obj);
            string xml = writer.ToString();
            writer.Close();
            writer.Dispose();

            return xml;
        }

        public static T Deserialize<T>(string xml)
        {
            XmlSerializer serializer = new XmlSerializer(typeof(T));
            StringReader reader = new StringReader(xml);
            T result = (T)(serializer.Deserialize(reader));
            reader.Close();
            reader.Dispose();

            return result;
        }
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章