아래 옵션 블록의 일부 아래에 ProjectID 확인을 할 수있는 방법이 있습니까? 저는 Java EE에서 최근의 .Net 변환이며 Hibernate Criteria API와 비슷한 것을 찾고 있습니다. 아래 블록을 단순화하고 Where()를 한 번만 호출하면됩니다. 또한 일주일 전에 .Net으로 작업하기 시작하면서 Lambda로 Where()를 수행하는 것이 성능에 미치는 영향에 대해서 확신 할 수 없습니다.Linq.Table.Where()의 선택적 OR 구문 사용
쿼리가 처음으로까지 해석 및 실행되지 않습니다Expression<Predicate<Project>> predicate = p => p.ProjectDescription.Contains(search);
if (isID)
predicate = p => predicate(p) || p.ProjectID == projectId;
return dataContext.Where(predicate);
그렇지만 이것은 Hibernate에서 새로운 Criterion을 만드는 것보다 훨씬 복잡 해 보인다. 나는 LINQ가 그런 것을 지원하지 않는다고 추측하고있다. –
사실, 매우 장황합니다. 그러나 상황에 맞는 바로 가기가있을 수 있습니다. 나는 이것을 언급하기 위해 설명을 확장했다. – Ruben