0

EF 코어에 대한 언급이없는 것 같습니다. 이전 EF 버전에서는 지연로드를 비활성화하는 예제를 발견했습니다. 저는 asp.net 코어, MVC6, Web API, AngularJS 사이트를 가지고 있습니다.Entity Framework Core 1.0.0 지연/지연로드 비활성화

응용 프로그램에서 테이블 멤버와 멤버 테이블에 대한 외래 키 참조가있는 MemberStateActions 테이블이 있습니다. 아래 쿼리를 사용하여 데이터를 선택한 다음 Web API 호출을 통해 Json 반환 형식으로 데이터를 반환합니다. Web API를 통해 반환되는 결과 MemberStateAction 객체에는 MemberStateAction.Member 객체가 채워집니다. 나는 .include를 사용하여 회원 데이터를 열망하지 않았다. 속성을 호출하여 Member 객체를 게으른로드하지 않았습니다. 멤버 데이터가 자동으로 채워지는 이유를 모르겠습니다. 나는 json serialization이 Web API 응답에서 보내지기 전에 구성원 데이터를 지연로드하는 원인이되는 구성원 속성을 호출하고있는 것으로 보았습니다. 이것이 원인인지 확실하지 않습니다.

결론 다음은 회원 객체의 자동 로딩을 방지하는 방법에 대해 설명합니다. 지연로드를 비활성화하면 가능합니까?

 var q = (from x in _context.MemberStateAction 
       where x.MemberId == memberID 
       select x); 

     return q; 
+0

당신은 EF 코어에 게으른 로딩이없는, 그것은 아직 수행되지 않는 이유는 무엇입니까? 네가 정확히 원하는 걸 –

답변

0

Entity Framework Core에는 현재 (RTM Build) 지연 구현이 구현되어 있지 않습니다.

.Include 확장 방법을 사용하여 열심히로드하는 것이 좋습니다. 저장소를 사용하여 열망하는로드를 수행하는 것도 좋은 생각입니다.

참조 : https://github.com/aspnet/EntityFramework/issues/3797