IQueryable 또는 IEnumerable을 구현하는 컬렉션에서 linq 구문을 사용할 수 있음을 알고 있습니다.IEnumerable에서 linq를 통해 IQueryable에서 linq를 사용하는 것을 선호하는 이유는 무엇입니까?
IEnumerable은 아니지만 IQueryable은 지연 계산 및 최적화를 사용합니까?
최적화가 쿼리 순서 변경을 포함합니까?
IQueryable 또는 IEnumerable을 구현하는 컬렉션에서 linq 구문을 사용할 수 있음을 알고 있습니다.IEnumerable에서 linq를 통해 IQueryable에서 linq를 사용하는 것을 선호하는 이유는 무엇입니까?
IEnumerable은 아니지만 IQueryable은 지연 계산 및 최적화를 사용합니까?
최적화가 쿼리 순서 변경을 포함합니까?
Linq는 객체 Linq에를 사용 - Linq에를 IQueryable
에 쿼리 제공 표준 쿼리 연산자 구현 한대로 사용하고 있습니다.
Linq to SQL 및 Entity Framework와 같은 ORM의 경우 Linq 쿼리를 데이터베이스의 해당 SQL 쿼리로 변환하는 것을 의미합니다. 데이터베이스의 필터링 등은 모든 데이터를 메모리로 이동하는 것이 훨씬 바람직합니다. 더 나은 성능.
아니요, IQueryable은 일반적으로 데이터베이스 지향 공급자에서 지원하며 SQL 로의 변환을 지원합니다.
모든 최적화는 SQL 엔진 때문일 것입니다.
IQueryable과 IEnumerable 모두 지연 실행을가집니다. IEnumerable
에
interface IQueryable<T> : IEnumerable<T> ...