/// <summary>
        /// 转化为JSON格式
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="depth">RecursionLimit</param>
        /// <returns></returns>
        public static string ToJson(this object obj, int maxDepth = 10)
        {
            JsonSerializerSettings settings = new JsonSerializerSettings();
            //settings.MaxDepth = maxDepth;
            settings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            settings.Converters.Add(new JavaScriptDateTimeConverter());
            return JsonConvert.SerializeObject(obj, settings);
        }

        public static string ToJsonIsoDateTime(this object obj)
        {
            JsonSerializerSettings settings = new JsonSerializerSettings();
            settings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            settings.Converters.Add(new IsoDateTimeConverter());
            return JsonConvert.SerializeObject(obj, settings);
        }

        /// <summary>
        /// 将JSON反序列化为对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sJason"></param>
        /// <returns></returns>
        public static T FromJson<T>(this string obj, int maxDepth = 2)
        {
            JsonSerializerSettings settings = new JsonSerializerSettings();
            //settings.MaxDepth = maxDepth;
            settings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            settings.Converters.Add(new JavaScriptDateTimeConverter());
            return JsonConvert.DeserializeObject<T>(obj, settings);
        }

        /// <summary>
        /// 将JSON反序列化为对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sJason"></param>
        /// <returns></returns>
        public static T FromJsonIsoDateTime<T>(this string obj)
        {
            return JsonConvert.DeserializeObject<T>(obj, new IsoDateTimeConverter());
        }

 

  /// <summary>
        /// 转化为JSON格式
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="depth">RecursionLimit</param>
        /// <returns></returns>
        public static string ToJson(object obj, int maxDepth = 2)
        {
            return obj.ToJson(maxDepth);
        }

        /// <summary>
        /// 将JSON反序列化为对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sJason"></param>
        /// <returns></returns>
        public static T FromJson<T>(string obj, int maxDepth = 2)
        {
            return obj.FromJson<T>(maxDepth);
        }