public
Created

ObjectToXElement

  • Download Gist
ObjectToXElement.cs
C#
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
using System;
using System.IO;
using System.Xml;
using System.Xml.Linq;
using System.Xml.Serialization;
 
public static class GenericExtensions
{
public static XElement ToXElement<T>(this T obj)
{
try
{
var emptyNamespace = new XmlSerializerNamespaces();
emptyNamespace.Add(String.Empty, String.Empty);
var xmlSerializer = new XmlSerializer(typeof(T));
var writerSettings = new XmlWriterSettings {OmitXmlDeclaration = true};
var stringWriter = new StringWriter();
using (var xmlWriter = XmlWriter.Create(stringWriter, writerSettings))
{
xmlSerializer.Serialize(xmlWriter, obj, emptyNamespace);
}
return XElement.Parse(stringWriter.ToString());
}
catch (Exception)
{
return null;
}
}
}

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.