private Place CreateModel(PlaceBindingModel model, Place place) { place.Name = model.Name; place.Type = model.Type; place.TouristID = model.TouristID; return(place); }
public void Insert(PlaceBindingModel model) { using (var context = new TourFirmDatabase()) { context.Places.Add(CreateModel(model, new Place())); context.SaveChanges(); } }
public void Delete(PlaceBindingModel model) { var element = _placeStorage.GetElement(new PlaceBindingModel { ID = model.ID }); if (element == null) { throw new Exception("Элемент не найден"); } _placeStorage.Delete(model); }
public void Update(PlaceBindingModel model) { using (var context = new TourFirmDatabase()) { var element = context.Places.FirstOrDefault(rec => rec.ID == model.ID); if (element == null) { throw new Exception("Элемент не найден"); } CreateModel(model, element); context.SaveChanges(); } }
public List <PlaceViewModel> Read(PlaceBindingModel model) { if (model == null) { return(_placeStorage.GetFullList()); } if (model.ID.HasValue) { return(new List <PlaceViewModel> { _placeStorage.GetElement(model) }); } return(_placeStorage.GetFilteredList(model)); }
public void Delete(PlaceBindingModel model) { using (var context = new TourFirmDatabase()) { Place element = context.Places.FirstOrDefault(rec => rec.ID == model.ID); if (element != null) { context.Places.Remove(element); context.SaveChanges(); } else { throw new Exception("Элемент не найден"); } } }
public PlaceViewModel GetElement(PlaceBindingModel model) { if (model == null) { return(null); } using (var context = new TourFirmDatabase()) { Place place = context.Places .FirstOrDefault(rec => rec.Name == model.Name || rec.ID == model.ID); return(place != null ? new PlaceViewModel { ID = place.ID, Name = place.Name, Type = place.Type, TouristID = place.TouristID } : null); } }
public void CreateOrUpdate(PlaceBindingModel model) { var element = _placeStorage.GetElement(new PlaceBindingModel { Name = model.Name }); if (element != null && element.ID != model.ID) { throw new Exception("Данное место уже зарегистрировано"); } if (model.ID.HasValue) { _placeStorage.Update(model); } else { _placeStorage.Insert(model); } }
public List <PlaceViewModel> GetFilteredList(PlaceBindingModel model) { if (model == null) { return(null); } using (var context = new TourFirmDatabase()) { return(context.Places .Where(rec => rec.TouristID == model.TouristID) .ToList() .Select(rec => new PlaceViewModel { ID = rec.ID, Name = rec.Name, Type = rec.Type, TouristID = rec.TouristID }).ToList()); } }