2011-10-05 2 views
0

,이 일을 어떤 성능 비용 ...이 대하나의 Where()를 && 2 Where() 호출 (EF)으로 분해 할 때 성능 비용이 있습니까? 엔티티 프레임 워크에서

var businesses = dbContext.Businesses.Where(x => x.Name.ToLower().StartsWith(name) && businessTypes.Contains(x.Type));

...가?

var businesses = dbContext.Businesses.Where(x => x.Name.ToLower().StartsWith(name)).Where(x => businessTypes.Contains(x.Type));

나는 그것을 쉽게 읽을 이후 후자를 수행하는 것을 선호하지만, 생성 된 SQL에 심각한 성능 저하가있다하지 않을 경우.

+0

디버깅 할 때 생성 된 실제 SQL을 볼 수 있습니다. – SQLMason

+0

그래, 나도 알아 - 공개적으로 지식을 얻고 싶었는데 어쨌든 누군가가 대답을 알고 있다고 생각했다. –

답변

3

아니요 성능 비용이 없습니다. EF Linq 공급자가 두 SQL 쿼리를 모두 매핑합니다. 개인적으로 훨씬 더 읽기 쉬운 첫 번째 버전을 찾습니다.

관련 문제