IQueryable을 반환하는 지연된 GetAll 메서드로 저장소 패턴을 사용하고 데이터베이스에서 개체를 가져 오는 경우가 있습니다. 그러나 나는 또한 게으른로드 된 개체 (쿼리)에 포함될 동적 개체를 빌드해야합니다.IQueryable 및 Lazy Loading 및 Eager Loading 섞기
게으른로드 된 IQueryable에 빌드 된 개체를 추가하고 지연된 이점을 계속 유지할 수 있습니까? 예를
public override IQueryable<Foo> GetAll()
{
return _entities; // lazy loaded
}
public override IQueryable<Foo> GetAllPlusDynamic()
{
var entities = GetAll();
foreach(var d in GetAllDynamic())
{
entities.Add(d); // eagerly loaded
}
return entities;
}
솔직히 질문을 이해할 수 없습니다. "열심히로드 된" "동적 인 대상"은 무엇입니까? 'Include (customer => customer.Orders)'와 같이 어떤 종류의'Include' 표현을 의미합니까? 구체적인 예를들 수 있습니까? – Slauma
@Slauma 제 이해는 Op가 * GetAllPlusDynamic *을 데이터베이스 콜렉션 * plus * 다른 콜렉션을 쿼리하기를 원했던 것입니다 ... – McGarnagle
예, 기본적으로 오브젝트 세트에 대한 데이터베이스를 조회 한 후 다른 데이터 소스 (이 경우에는 서비스) 그리고 일련의 객체를 빌드하십시오. –