private static void LoadSettings() { if (_folder == null) { throw new ArgumentNullException("_folder", "Root folder not initialized!"); } string file = CoreVars.GetFilePath(_folder, CoreVars.SettingsFile); if (!File.Exists(file)) { var defaultSettings = GetDefaultSettings(); defaultSettings.Save(); _settings = defaultSettings; return; } _settings = JsonConvert.DeserializeObject <PluginSettings>(File.ReadAllText(file)); var def = GetDefaultSettings(); _settings.GenresTagField = _settings.GenresTagField ?? def.GenresTagField; _settings.MoodsTagField = _settings.MoodsTagField ?? def.MoodsTagField; _settings.ThemesTagField = _settings.ThemesTagField ?? def.ThemesTagField; _settings.Genres = _settings.Genres ?? def.Genres; _settings.Moods = _settings.Moods ?? def.Moods; _settings.Themes = _settings.Themes ?? def.Themes; _settings.Save(); }
public void Save() { string file = CoreVars.GetFilePath(_folder, CoreVars.SettingsFile); string jsonFileContent = JsonConvert.SerializeObject(this, typeof(IPluginSettings), Formatting.Indented, new JsonSerializerSettings()); File.WriteAllText(file, jsonFileContent); }