public async Task <IEnumerable <T> > GetRandomSet <T>(int numberInSet) where T : CharacterEntity { int tableCount = await _repo.GetCount(); var rand = new Random(); List <T> charactersToReturn = new List <T>(); for (int i = 0; i < numberInSet; i++) { var character = await this.GetEntity <T>(rand.Next(1, tableCount + 1)); charactersToReturn.Add(character); } return(charactersToReturn); }