using System;
using System.IO;
using System.Xml.Serialization;
namespace NXWMS.Code.Serialize
{
///
/// Xml序列化与反序列化
///
public static class XmlSerialize
{
#region 反序列化
///
/// 反序列化
///
/// 类型
/// XML字符串
///
public static object Deserialize(Type type, string xml)
{
using (StringReader sr = new StringReader(xml))
{
XmlSerializer xmldes = new XmlSerializer(type);
return xmldes.Deserialize(sr);
}
}
///
/// 反序列化
///
///
///
///
public static object Deserialize(Type type, Stream stream)
{
XmlSerializer xmldes = new XmlSerializer(type);
return xmldes.Deserialize(stream);
}
#endregion
#region 序列化
///
/// 序列化
///
/// 类型
/// 对象
///
public static string Serializer(Type type, object obj)
{
MemoryStream Stream = new MemoryStream();
XmlSerializer xml = new XmlSerializer(type);
//序列化对象
xml.Serialize(Stream, obj);
Stream.Position = 0;
StreamReader sr = new StreamReader(Stream);
string str = sr.ReadToEnd();
sr.Dispose();
Stream.Dispose();
return str;
}
#endregion
}
}