Entity Framework Plus로 여러 수준로드 문제


문제

Entity Framework Plus에 문제가 있습니다. 여러 수준의 작업을로드 할 수없는 것 같습니다.

다음 쿼리는 정상적으로 작동합니다. 예상 주소 목록과 함께 사용자를 돌려받습니다.

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .SingleOrDefault();

그러나 다음 쿼리를 사용하면이 쿼리가 분리됩니다.

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .SingleOrDefault();

나는 사용자를 다시 얻지 만 이제 Addresses 목록은 비어 있습니다.

EF6 및 EF + v1.7.14.0을 사용하고 있습니다.

도움을 줄 수있는 사람에게 미리 감사드립니다.

건배 크레이그

인기 답변

아아! 이 얼마나 마약인가! 나는 두 가지 진술로 그것을 할 필요가 있습니다 ... 그것은 정말로 완벽하게 이해됩니다. 주소 유형을 선택하고 주소를 남겨두고있었습니다.

내 쿼리는 다음과 같아야합니다.

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue).Select(a => a.AddressType))
                .SingleOrDefault();

고마워. 너는 챔피언이야!





아래 라이선스: CC-BY-SA
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.