C#中的通用反序列化方法

时间:2012-01-03 13:24:05

标签: c# serialization xml-serialization deserialization

我有这个方法来序列化任何类型的对象

    public static string SerializeObject<T>(this T toSerialize)
    {
        XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
        StringWriter textWriter = new StringWriter();

        xmlSerializer.Serialize(textWriter, toSerialize);
        return textWriter.ToString();
    }

现在我需要一些方法将字符串反序列化为对象类型,我可以根据某些代码进行转换。

我的问题是如何实施这种方法?

谢谢你们!

1 个答案:

答案 0 :(得分:5)

public static T Deserialize<T>(string xmlDataToDeSerialize)
{
    XmlSerializer xmlDeSerializer = new XmlSerializer(typeof(T));
    StringReader stringReader = new StringReader(xmlDataToeSerialize);
    return (T)xmlDeSerializer.Deserialize(stringReader);            
}