public IHttpActionResult AddActivity(ActivityCreateModel model) { if (model == null) { return(BadRequest("Model can't be empty.")); } try { var activity = new Activity { Date = model.Date, Description = model.Description, ExpireDate = model.ExpireDate, Location = model.LocationId, MaxPlayers = model.MaxPlayers, MinPlayers = model.MinPlayers, MinPlayersRating = model.MinPlayersRating, Sport = DbContext.Sports.FirstOrDefault(x => x.SportId == model.SportId), Players = DbContext.UserProfiles.Where(x => x.UserProfileId == CurrentUser.UserProfile.UserProfileId).ToList() }; if (model.InvitedPeople.Count > 0) { var invitedPeople = model.InvitedPeople.Select(x => x.Value).ToList(); activity.PossiblePlayers = DbContext.UserProfiles .Where(x => invitedPeople.Contains(x.UserProfileId)).ToList(); } activity.AddAudit(CurrentUser); DbContext.Activities.Add(activity); DbContext.SaveChanges(); return(Ok(activity.ActivityId)); } catch (Exception e) { return(InternalServerError(e)); } }