Xml字符串反序列化为实体问题

public class XmlDataSerializer
{
    public object GetObjectData(string stream,Type type)
    {
        if (string.IsNullOrEmpty(stream))
            return null;

        stream = stream.Replace("", "<" + type.Name + ">");
        stream = stream.Replace("
", "");

        stream = stream.Replace("", "");
        stream = stream.Replace("", "");
        stream = stream.Replace("
", "
");

        XmlReader xmlReader = XmlReader.Create(new StringReader(stream));
        XmlSerializer mySerializer = new XmlSerializer(type);
        return mySerializer.Deserialize(xmlReader);
    }

 

stream为Xml字符串数据。type为tpyeof(类名)。

 

    //public Questionnaire GetQuestionnaireData(string stream)
    //{
    //    if (string.IsNullOrEmpty(stream))
    //        return null;

    //    stream = stream.Replace("", "");
    //    stream = stream.Replace("
", "");

    //    stream = stream.Replace("", "");
    //    stream = stream.Replace("", "");
    //    stream = stream.Replace("
", "
");

    //    XmlReader xmlReader = XmlReader.Create(new StringReader(stream));
    //    XmlSerializer mySerializer = new XmlSerializer(typeof(Questionnaire));
    //    return mySerializer.Deserialize(xmlReader) as Questionnaire;
    //}

    //public SiteRecordsOfInvestigation GetSiteRecordsOfInvestigationData(string stream)
    //{
    //    if (string.IsNullOrEmpty(stream))
    //        return null;

    //    stream = stream.Replace("", "");
    //    stream = stream.Replace("
", "");

    //    XmlReader xmlReader = XmlReader.Create(new StringReader(stream));
    //    XmlSerializer mySerializer = new XmlSerializer(typeof(SiteRecordsOfInvestigation));
    //    return mySerializer.Deserialize(xmlReader) as SiteRecordsOfInvestigation;
    //}
}

呵呵。。。把上面连个方法改为一个通用的方法,不知道算不算重构。。。

转载于:https://www.cnblogs.com/lanchong/archive/2012/03/06/2382292.html

你可能感兴趣的:(Xml字符串反序列化为实体问题)