Как я могу указать условия в предикатах Where в LINQ, не получая нулевые ссылочные исключения. Например, если q
является IQueryable, как может мне нравится:Где предикаты в LINQ
Expression<Func<ProductEntity,bool>> predicate = p => !search.CategoryId.HasValue || (search.CategoryId.HasValue && search.CategoryId == p.CategoryId);
var q2 = q.Where(predicate);
Здесь search
является объект, который содержит возможные условия поиска, которые могут или не могут быть установлены как search.CategoryId не может быть установлен, но если это Я хочу получить продукты, установленные этим условием.
Когда я это делаю, я получаю нулевые ссылочные исключения.