Skip to content

Instantly share code, notes, and snippets.

@posaunehm
Created November 29, 2012 09:31
Show Gist options
  • Save posaunehm/4167810 to your computer and use it in GitHub Desktop.
Save posaunehm/4167810 to your computer and use it in GitHub Desktop.
Extention method for serialize using DataContract
public static class DataContractExtention
{
public static string ToStringUsingDataContract<T>(this T source)
{
var selializer = new DataContractSerializer(source.GetType());
var ms = new MemoryStream();
selializer.WriteObject(ms, source);
return Encoding.UTF8.GetString(ms.ToArray());
}
public static T ToObjectUsingDataContract<T>(this string source)
{
var selializer = new DataContractSerializer(typeof(T));
var ms = new MemoryStream(Encoding.UTF8.GetBytes(source));
return (T)selializer.ReadObject(ms) ;
}
}
using DataContractExtention
//Serialize
var x = new SomeClass();
var str = x.ToStringUsingDataContract();
//Deserialzie
SomeClass y = str.ToObjectUsingDataContract<SomeClass>();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment