//查询Profession public async Task <IEnumerable <Profession> > GetProfessionsAsync(ProfessionDtoParameters professionDtoParameters) { if (professionDtoParameters == null) { throw new ArgumentNullException(nameof(professionDtoParameters)); } //如果 筛选条件 和 查询字符串 都为空的话 if (string.IsNullOrWhiteSpace(professionDtoParameters.ProfessionName) && string.IsNullOrWhiteSpace(professionDtoParameters.SearchTerm)) { return(await _context.Professions.ToListAsync()); } var professionItems = _context.Professions as IQueryable <Profession>; //筛选条件 if (!string.IsNullOrWhiteSpace(professionDtoParameters.ProfessionName)) { professionDtoParameters.ProfessionName = professionDtoParameters.ProfessionName.Trim(); professionItems = professionItems.Where(x => x.ProfessionName == professionDtoParameters.ProfessionName); } //查询条件 if (!string.IsNullOrWhiteSpace(professionDtoParameters.SearchTerm)) { professionDtoParameters.SearchTerm = professionDtoParameters.SearchTerm.Trim(); professionItems = professionItems.Where(x => x.ProfessionName.Contains(professionDtoParameters.SearchTerm) || x.ProfessionCode.Contains(professionDtoParameters.SearchTerm)); } return(await professionItems.ToListAsync()); }
public async Task <ActionResult <IEnumerable <ProfessionDto> > > GetProfessions([FromQuery] ProfessionDtoParameters professionDtoParameters) { var professions = await _professionRepository.GetProfessionsAsync(professionDtoParameters); //添加导航属性 foreach (var professin in professions) { professin.Academy = await _academyRepository.GetAcademyAsync(professin.AcademyId); } var professionDtos = _mapper.Map <IEnumerable <ProfessionDto> >(professions); return(Ok(professionDtos)); }