/// <summary> /// Serializes given object into json string /// </summary> /// <typeparam name="T"></typeparam> /// <param name="object"></param> /// <param name="params"></param> /// <returns></returns> public static string SerializeToJson <T>(T @object, JsonSerializationParams @params = null) { StringBuilder sb = new StringBuilder(256); StringWriter sw = new StringWriter(sb, CultureInfo.InvariantCulture); @params = @params ?? new JsonSerializationParams(); var jsonSerializer = JsonSerializer.CreateDefault(); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = (Formatting)@params.Formatting; jsonWriter.IndentChar = @params.IndentChar; jsonWriter.Indentation = @params.Indentation; jsonSerializer.ContractResolver = new CamelCasePropertyNamesContractResolver(); jsonSerializer.NullValueHandling = (NullValueHandling)@params.NullValueHandling; jsonSerializer.DefaultValueHandling = (DefaultValueHandling)@params.DefaultValueHandling; jsonSerializer.Serialize(jsonWriter, @object, typeof(T)); } return(sw.ToString()); }
/// <summary> /// Serializes given object into hjson string /// </summary> /// <typeparam name="T"></typeparam> /// <param name="object"></param> /// <param name="params"></param> /// <returns></returns> public static string SerializeToHJson <T>(T @object, JsonSerializationParams @params = null) { return(JsonValue.Parse(SerializeToJson(@object, @params)).ToString(Stringify.Hjson)); }