using System.Text.Json; using System.Text.Json.Serialization; namespace View_by_Distance.Rename.Models; public class AppSettings { public string Company { init; get; } public string ComparePathsFile { init; get; } public string CopyTo { init; get; } public int MaxDegreeOfParallelism { init; get; } public int MaxMinutesDelta { init; get; } public bool RenameUndo { init; get; } public string WorkingDirectoryName { init; get; } [JsonConstructor] public AppSettings(string company, string comparePathsFile, string copyTo, int maxDegreeOfParallelism, int maxMinutesDelta, bool renameUndo, string workingDirectoryName) { Company = company; ComparePathsFile = comparePathsFile; CopyTo = copyTo; MaxDegreeOfParallelism = maxDegreeOfParallelism; MaxMinutesDelta = maxMinutesDelta; RenameUndo = renameUndo; WorkingDirectoryName = workingDirectoryName; } public override string ToString() { string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true }); return result; } }