나는이 문제에 실행 한 : LINQ to Entities는 "사용자 지정 방법"을 지원하지 않습니다. 어떻게 DRY 상태를 유지합니까?
Custom Methods & Extension Methods cannot be translated into a store expression
는 기본적으로 좀 복잡한 LINQ 쿼리를, 그래서 IQueryables를 돌려주는 메소드로 구현 서브 쿼리로를 분해하고 싶었다. 내 희망은이 IQueryables가 LINQ 문으로 함께 구성 될 수 있다는 것입니다 (LINQ to SQL에서 할 수있을 것으로 확신 함).문제는 당신이 시도 할 경우 (예를 들어) 얻을 수 있습니다 : 엔티티에
LINQ는 방법을 인식하지 못하는 'System.Linq.IQueryable`1 [스레드] GetThreadsByMostReccentlyPosted (INT32) ' 메서드이고이 메서드는 을 저장소 식으로 변환 할 수 없습니다.
LINQ ORM을 사용하면 LINQ 쿼리를 작성할 수 있어야합니다. 그렇지 않으면 일반적인 검색어 로직은 복사 &이어야합니다.
이 제한 사항을 감안할 때 LINQ to Entities로 DRY 상태를 유지하려면 어떻게해야합니까?
정말 알고 싶은 것은 "L2F에서 할 수있는 것처럼 EF에서 지연된 실행을 어떻게 수행합니까?"입니다. –
지금까지이 작업을 수행하는 유일한 방법은 IQueryable을 IEnumerable로 변환하는 것입니다.이 시점에서 최적의 SQL 문을 생성 할 수있는 능력을 잃어버린 것 같습니다. – Schneider
지연된 실행과 관련이 없습니다. 기본적으로 그것은 나에게 당신이 "일반적인 쿼리"라고 할 때 IEnumerables를 의미하는 – Schneider