null 참조 예외가 발생하지 않고 LINQ의 조건부 조건을 지정할 수있는 방법은 무엇입니까? 예를 들어, q
가 된 IQueryable 경우 내가 좋아합니까 방법 : 여기 search
LINQ의 술어
Expression<Func<ProductEntity,bool>> predicate = p => !search.CategoryId.HasValue || (search.CategoryId.HasValue && search.CategoryId == p.CategoryId);
var q2 = q.Where(predicate);
것은 나 설정되지 않을 수 있습니다 search.CategoryId처럼 설정되지 않을 수 있습니다 가능한 검색 조건을 유지하는 목적이지만 경우 나는 그 조건에 의해 설정된 제품을 얻고 싶다.
이렇게하면 null 참조 예외가 발생합니다.