public bool Save(MilkRunViewModel model, User user) { const int humanMilkProductId = 5; model.CreatedByUserId = user.UserID; var runLog = _mapper.Map(model); var prods = Enumerable.Repeat(humanMilkProductId, model.BoxQty).ToList(); var dal = new RunLogDAL(); var vehicleTypeId = dal.GetVehicleId(model.VehicleType); if (!vehicleTypeId.HasValue) { throw new InvalidOperationException($"Unknown VehicleType [{model.VehicleType}] while trying to save milk run"); } runLog.VehicleTypeID = vehicleTypeId.Value; if (model.RunLogId == 0) { return(dal.CreateRunLog(runLog, prods) > 0); } var to = dal.Get(model.RunLogId); UpdatePropertyValues(runLog, to); return(dal.Update(to)); }