SerializationHelper
using Newtonsoft.Json;
using System;
namespace Relativity.Transfer
{
public static class SerializationHelper
{
public static DateTime? DeserializeFromDateTime(string value)
{
try {
if (!string.IsNullOrEmpty(value))
return DateTime.Parse(value, null);
return null;
} catch (Exception ex) {
if (!(ex is ArgumentNullException) && !(ex is ArgumentException) && !(ex is FormatException))
throw;
return null;
}
}
public static T DeserializeFromJson<T>(string json)
{
if (!string.IsNullOrEmpty(json))
return JsonConvert.DeserializeObject<T>(json);
return default(T);
}
public static string SerializeToJson<T>(T value)
{
return SerializeToJson(value, false);
}
public static string SerializeToJson<T>(T value, bool format)
{
if (value == null)
throw new ArgumentNullException("value");
if (!format)
return JsonConvert.SerializeObject(value);
return JsonConvert.SerializeObject(value, Formatting.Indented);
}
}
}