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