示例#1
0
    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());
    }
示例#2
0
 public static void WriteConfiguration <T>(string path, T configuration)
 {
     File.WriteAllText(path, configuration.SerializeObject(Formatting.Indented, JsonIndentation.ReadFromSettings(Path.GetDirectoryName(path))));
 }