序列化实体类成为一个干净的Xml,不带空格、换行符以及命名空间
/// <summary>
/// 序列化成XML
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="obj"></param>
/// <returns></returns>
public static string XmlSerialize<T>(T obj, Encoding encoding)
{
string result = string.Empty;
try
{
using (MemoryStream memoryStream = new MemoryStream())
{
XmlSerializer xmlSerializer = new XmlSerializer(obj.GetType());
//序列化对象
XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces();
namespaces.Add("", ""); XmlTextWriter xmlTextWriter = new XmlTextWriter(memoryStream, encoding); xmlTextWriter.Formatting = System.Xml.Formatting.None;
xmlSerializer.Serialize(xmlTextWriter, obj, namespaces);
xmlTextWriter.Flush();
xmlTextWriter.Close(); result = encoding.GetString(memoryStream.ToArray());
}
}
catch
{ }
return result;
}