EntityReference<TEntity>.Load(MergeOption) 메서드

정의

지정된 병합 옵션을 사용하여 이 EntityReference<TEntity>의 관련 개체를 로드합니다.

public:
 override void Load(System::Data::Objects::MergeOption mergeOption);
public override void Load (System.Data.Objects.MergeOption mergeOption);
override this.Load : System.Data.Objects.MergeOption -> unit
Public Overrides Sub Load (mergeOption As MergeOption)

매개 변수

mergeOption
MergeOption

ObjectContext에 개체가 이미 있는 경우 해당 개체를 반환하는 방법을 지정합니다.

예외

EntityReference<TEntity>의 소스가 null인 경우

또는

쿼리에서 관련 끝을 둘 이상 반환한 경우

또는

쿼리에서 관련 End가 하나 반환되어야 하는데 반환되지 않은 경우

설명

이 메서드는 관련 개체를 로드하는 데 사용됩니다.

로드될 때 관련 개체는 속성에서 Value 액세스됩니다.

관련 개체를 명시적으로 로드하려면 탐색 속성에서 반환된 Load 관련 끝에서 메서드를 호출해야 합니다. 일 대 다 관계의 경우 에서 메서드를 Load 호출하고 일대일 관계의 경우 에서 를 호출합니다EntityReference<TEntity>Load.EntityCollection<TEntity> 그러면 관련 개체 데이터가 개체 컨텍스트에 로드됩니다. 쿼리가 결과를 반환하는 경우 루프(Visual Basic의 경우)를 사용하여 foreach 개체 컬렉션을 열거하고 결과에서 각 엔터티에 대한 및 EntityCollection<TEntity> 속성에 대한 메서드를 EntityReference<TEntity> 조건부로 호출 Load 할 수For Each...Next 있습니다.

메서드는 Load 가 인지 여부에 IsLoadedtrue관계없이 데이터 원본에서 관련 개체를 로드합니다.

참고

(C#) 또는 For Each (Visual Basic) 열거 중에 메서드를 foreach 호출 Load 하면 Object Services에서 새 데이터 판독기를 열려고 시도합니다. 연결 문자열 를 지정하여 여러 활성 결과 집합을 multipleactiveresultsets=true 사용하도록 설정하지 않으면 이 작업이 실패합니다. 쿼리 결과를 컬렉션에 로드할 List<T> 수도 있습니다. 이렇게 하면 데이터 판독기가 닫히며 참조된 개체를 로드하기 위해 컬렉션을 열거할 수 있습니다.

이 메서드는 관련 개체를 로드하기 전에 내부 RelatedEnd.ValidateLoad 메서드를 호출하여 에 대한 호출 Load 에 올바른 조건이 있는지 확인합니다. 메서드는 다음 RelatedEnd.ValidateLoad 을 확인합니다.

관련 개체가 이미 에 ObjectContext로드된 경우 메서드는 Load 매개 변수에 지정된 를 mergeOption 적용합니다MergeOption. 자세한 내용은 Id 확인, 상태 관리 및 변경 내용 추적합니다.

적용 대상

추가 정보