public void Update(ModuleBindingModel model) { using (var context = new MebelDatabase()) { using (var transaction = context.Database.BeginTransaction()) { try { var module = context.Modules.FirstOrDefault(rec => rec.Id == model.Id); if (module == null) { throw new Exception("Модуль не найден"); } CreateModel(model, module, context); context.SaveChanges(); transaction.Commit(); } catch { transaction.Rollback(); throw; } } } }
public void Delete(ModuleBindingModel model) { var element = _moduleStorage.GetElement(new ModuleBindingModel { Id = model.Id }); if (element == null) { throw new Exception("Элемент не найден"); } _moduleStorage.Delete(model); }
public List <ModuleViewModel> Read(ModuleBindingModel model) { if (model == null) { return(_moduleStorage.GetFullList()); } if (model.Id.HasValue) { return(new List <ModuleViewModel> { _moduleStorage.GetElement(model) }); } return(_moduleStorage.GetFilteredList(model)); }
public void Delete(ModuleBindingModel model) { using (var context = new MebelDatabase()) { var module = context.Modules.FirstOrDefault(rec => rec.Id == model.Id); if (module == null) { throw new Exception("Модуль не найден"); } context.Modules.Remove(module); context.SaveChanges(); } }
public List <ModuleViewModel> GetFilteredList(ModuleBindingModel model) { if (model == null) { return(null); } using (var context = new MebelDatabase()) { return(context.Modules .Include(rec => rec.ModuleMaterial) .Include(rec => rec.ModuleMebel) .Where(rec => rec.Id == model.Id) .Select(CreateModel) .ToList()); } }
public void CreateOrUpdate(ModuleBindingModel model) { var element = _moduleStorage.GetElement(new ModuleBindingModel { Name = model.Name }); if (element != null && element.Id != model.Id) { throw new Exception("Уже есть подарок с таким названием"); } if (model.Id.HasValue) { _moduleStorage.Update(model); } else { _moduleStorage.Insert(model); } }
public void Insert(ModuleBindingModel model) { using (var context = new MebelDatabase()) { using (var transaction = context.Database.BeginTransaction()) { try { CreateModel(model, new Module(), context); context.SaveChanges(); transaction.Commit(); } catch { transaction.Rollback(); throw; } } } }
public ModuleViewModel GetElement(ModuleBindingModel model) { if (model == null) { return(null); } using (var context = new MebelDatabase()) { var module = context.Modules .Include(rec => rec.ModuleMaterial) .ThenInclude(rec => rec.Material) .Include(rec => rec.ModuleMebel) .ThenInclude(rec => rec.Mebel) .FirstOrDefault(rec => rec.Id == model.Id); return(module != null? CreateModel(module) : null); } }