/// <summary> /// Create a json representation for an object with parameter override on this call /// </summary> /// <param name="obj"></param> /// <param name="param"></param> /// <returns></returns> public static string ToJson(object obj, JsonParameters param) { param.FixValues(); Type t = null; if (obj == null) { return("null"); } if (obj.GetType().IsGenericType) { t = Reflection.Instance.GetGenericTypeDefinition(obj.GetType()); } if (t == typeof(Dictionary <,>) || t == typeof(List <>)) { param.UsingGlobalTypes = false; } //Debug.Log(obj.GetType().Name); return(new JsonSerializer(param).ConvertToJson(obj)); }
/// <summary> /// Create a typed generic object from the json with parameter override on this call /// </summary> /// <typeparam name="T"></typeparam> /// <param name="json"></param> /// <param name="param"></param> /// <returns></returns> public static T ToObject <T>(string json, JsonParameters param) { return(new Deserializer(param).ToObject <T>(json)); }
public Deserializer(JsonParameters param) { _params = param; }
internal JsonSerializer(JsonParameters param) { _params = param; _useEscapedUnicode = JsonParameters.UseEscapedUnicode; _maxDepth = JsonParameters.SerializerMaxDepth; }