public ClientManager(IAppOption settings) { var client = new MongoClient(settings.ClientSettings.ConnectionString); var database = client.GetDatabase(settings.ClientSettings.DatabaseName); _clients = database.GetCollection <ClientModel>(settings.ClientSettings.Clients); }
public BudgetManager(IAppOption settings) { var budget = new MongoClient(settings.BudgetSettings.ConnectionString); var database = budget.GetDatabase(settings.BudgetSettings.DatabaseName); _budget = database.GetCollection <BudgetModel>(settings.BudgetSettings.BudgetChanges); }
/// <summary> /// Устанавливает опцию или добавляет /// </summary> /// <param name="option">Опция</param> public void SetOption(IAppOption option) { lock (LockObject1) { AppOption opt = new AppOption(option.Key, option.Value) { Name = option.Name, Description = option.Description }; _currentOptions.SetOption(opt); } }
/// <summary> /// Возвращает опцию с указанным ключом/наименованием или создает её /// </summary> /// <param name="aKey">Ключ/наименование опции</param> /// <param name="defaultOption">Опция по умолчанию</param> /// <returns>Опцию</returns> public IAppOption GetOrCreateOption(string aKey, IAppOption defaultOption) { IAppOption res; try { res = GetOption(aKey, true); } catch (AppOptionNotFoundException ex) { defaultOption.Key = aKey; SetOption(defaultOption); Save(); try { res = GetOption(aKey); if (res.Value != defaultOption.Value) throw new AppOptionCreateException( string.Format("Созданная опция не совпадает с указанной. ({0} != {1})", res.Value, defaultOption.Value)); } catch (AppOptionNotFoundException nfe) { throw new AppOptionCreateException("Не удалось считать созданную опцию.", nfe); } } return res; }