public void AddModerator(int wallId, string responsibleUserId, UserAndOrganizationDTO userId) { var wall = _wallsDbSet .Include(x => x.Moderators) .Single(x => x.Id == wallId && x.OrganizationId == userId.OrganizationId); if (wall.Moderators.Any(x => x.UserId == responsibleUserId)) { return; } var newModerator = new WallModerator { WallId = wallId, UserId = responsibleUserId }; AddMemberToWalls(responsibleUserId, new List <int> { wallId }); _moderatorsDbSet.Add(newModerator); _uow.SaveChanges(userId.UserId); }
public async Task AddModeratorAsync(int wallId, string responsibleUserId, UserAndOrganizationDto userId) { var wall = await _wallsDbSet .Include(x => x.Moderators) .SingleAsync(x => x.Id == wallId && x.OrganizationId == userId.OrganizationId); if (wall.Moderators.Any(x => x.UserId == responsibleUserId)) { return; } var newModerator = new WallModerator { WallId = wallId, UserId = responsibleUserId }; await AddMemberToWallsAsync(responsibleUserId, new List <int> { wallId }); _moderatorsDbSet.Add(newModerator); await _uow.SaveChangesAsync(userId.UserId); }