using System.Globalization; using Newtonsoft.Json; using Newtonsoft.Json.Converters; using System; namespace jdis_import.RESTObjects { [JsonObject(MemberSerialization.OptIn)] public class RESTResponse { #region Fields private RESTMeta _meta = null; private T _data; #endregion #region Properties [JsonProperty(PropertyName = "meta")] public RESTMeta meta { get { if (_meta == null) { _meta = new RESTMeta(); } return _meta; } set { _meta = value; } } [JsonProperty(PropertyName = "data")] public T data { get { return _data; } set { _data = value; } } #endregion } public static class Deserialize { public static T FromJson(string json) { //Console.WriteLine(json); return JsonConvert.DeserializeObject(json, Converter.Settings); } } public static class Serialize { public static string ToJson(this T self) { return JsonConvert.SerializeObject(self, Converter.Settings); } } internal static class Converter { public static readonly JsonSerializerSettings Settings = new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Ignore, DateParseHandling = DateParseHandling.None, DateFormatHandling = DateFormatHandling.MicrosoftDateFormat, }; } }