//查询Notice public async Task <IEnumerable <Notice> > GetNoticesAsync(NoticeDtoParameters noticeDtoParameters) { if (noticeDtoParameters == null) { throw new ArgumentNullException(nameof(noticeDtoParameters)); } //如果 筛选条件 和 查询字符串 都为空的话 if (string.IsNullOrWhiteSpace(noticeDtoParameters.NoticeName) && string.IsNullOrWhiteSpace(noticeDtoParameters.SearchTerm)) { return(await _context.Notices.ToListAsync()); } var noticeItems = _context.Notices as IQueryable <Notice>; //筛选条件 if (!string.IsNullOrWhiteSpace(noticeDtoParameters.NoticeName)) { noticeDtoParameters.NoticeName = noticeDtoParameters.NoticeName.Trim(); noticeItems = noticeItems.Where(x => x.Title == noticeDtoParameters.NoticeName); } //查询条件 if (!string.IsNullOrWhiteSpace(noticeDtoParameters.SearchTerm)) { noticeDtoParameters.SearchTerm = noticeDtoParameters.SearchTerm.Trim(); noticeItems = noticeItems.Where(x => x.Title.Contains(noticeDtoParameters.SearchTerm) || x.Content.Contains(noticeDtoParameters.SearchTerm)); } return(await noticeItems.ToListAsync()); }
public async Task <ActionResult <IEnumerable <NoticeDto> > > GetNotices([FromQuery] NoticeDtoParameters noticeDtoParameters) { var notices = await _noticeRepository.GetNoticesAsync(noticeDtoParameters); var noticeDtos = _mapper.Map <IEnumerable <NoticeDto> >(notices); return(Ok(noticeDtos)); }