public bool EditLocationType(LocationTypeRequest request) { if (request == null) { return(false); } var locationType = _friendlyContext.LocationTypes.Find(request.LocationTypeId); if (locationType == null) { return(false); } foreach (var check in locationType.Checks.ToList()) { locationType.Checks.Remove(check); } foreach (var rating in locationType.Ratings.ToList()) { locationType.Ratings.Remove(rating); } locationType.Checks = _friendlyContext.Checks.Where(c => request.CheckIds.Contains(c.Id)).ToList(); locationType.Ratings = _friendlyContext.Ratings.Where(c => request.RatingIds.Contains(c.Id)).ToList(); _friendlyContext.SaveChanges(); return(true); }
public int AddLocationType(LocationTypeRequest request) { if (request == null) { return(-1); } var locationType = Mapper.Map <LocationType>(request); locationType.Checks = request.CheckIds.Select(c => _friendlyContext.Checks.Find(c)).ToList(); locationType.Ratings = request.RatingIds.Select(r => _friendlyContext.Ratings.Find(r)).ToList(); _friendlyContext.LocationTypes.Add(locationType); _friendlyContext.SaveChanges(); return(locationType.Id); }