public async Task <List <EntityReference> > GetAllReferences(int id) { List <EntityReference> entityReferences = new List <EntityReference>(); entityReferences.AddRange(AcademiaRepository.Where(x => x.CompensationMatrixId == id) .ToList() .Select(x => new EntityReference() { Id = entityReferences.Count + 1, Name = x.Name, Code = x.Code, Type = "Academia" })); entityReferences.AddRange(SkillsRepository.Where(x => x.CompensationMatrixId == id) .ToList() .Select(x => new EntityReference() { Id = entityReferences.Count + 1, Name = x.Name, Code = x.Code, Type = "Skill" })); entityReferences.AddRange(FunctionsRepository.Where(x => x.CompensationMatrixId == id) .ToList() .Select(x => new EntityReference() { Id = entityReferences.Count + 1, Name = x.Name, Code = x.Code, Type = "Function" })); entityReferences.AddRange(TasksRepository.Where(x => x.CompensationMatrixId == id) .ToList() .Select(x => new EntityReference() { Id = entityReferences.Count + 1, Name = x.Name, Code = x.Code, Type = "Task" })); entityReferences.AddRange(JobsRepository.Where(x => x.CompensationMatrixId == id) .ToList() .Select(x => new EntityReference() { Id = entityReferences.Count + 1, Name = x.Name, Code = x.Code, Type = "Job" })); return(entityReferences); }