public static string SerializeObject(this object value, Formatting formatting, JsonIndentation indentation) { JsonSerializer jsonSerializer = JsonSerializer.CreateDefault(null); jsonSerializer.Formatting = formatting; StringWriter stringWriter = new StringWriter(new StringBuilder(256), CultureInfo.InvariantCulture); using (JsonTextWriter jsonTextWriter = new JsonTextWriter(stringWriter)) { jsonTextWriter.Formatting = jsonSerializer.Formatting; jsonTextWriter.Indentation = indentation.IndentationLevel; jsonTextWriter.IndentChar = indentation.IndentationChar; jsonSerializer.Serialize(jsonTextWriter, value, null); } return(stringWriter.ToString()); }
public static void WriteConfiguration <T>(string path, T configuration) { File.WriteAllText(path, configuration.SerializeObject(Formatting.Indented, JsonIndentation.ReadFromSettings(Path.GetDirectoryName(path)))); }