Общий метод десериализации в C # - PullRequest
1 голос
/ 03 января 2012

У меня есть этот метод для сериализации объекта любого типа

    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 Ответ

5 голосов
/ 03 января 2012
public static T Deserialize<T>(string xmlDataToDeSerialize)
{
    XmlSerializer xmlDeSerializer = new XmlSerializer(typeof(T));
    StringReader stringReader = new StringReader(xmlDataToeSerialize);
    return (T)xmlDeSerializer.Deserialize(stringReader);            
}
...