Advertisement
harryovers

Generic Json Serialization Extension Method

Mar 28th, 2011
1,099
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.11 KB | None | 0 0
  1.     public static class JsonSerializer
  2.     {
  3.         public static string Serialize<T>(this T data)
  4.         {
  5.             try
  6.             {
  7.                 DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
  8.                 var stream = new MemoryStream();
  9.                 serializer.WriteObject(stream, data);
  10.                 string jsonData = Encoding.UTF8.GetString(stream.ToArray(), 0, (int)stream.Length);
  11.                 stream.Close();
  12.                 return jsonData;
  13.             }
  14.             catch
  15.             {
  16.                 return "";
  17.             }
  18.         }
  19.         public static T Deserialize<T>(this string jsonData)
  20.         {
  21.             try
  22.             {
  23.                 DataContractJsonSerializer slzr = new DataContractJsonSerializer(typeof(T));
  24.                 var stream = new MemoryStream(Encoding.UTF8.GetBytes(jsonData));
  25.                 T data = (T)slzr.ReadObject(stream);
  26.                 stream.Close();
  27.                 return data;
  28.             }
  29.             catch
  30.             {
  31.                 return default(T);
  32.             }
  33.         }
  34.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement