Condividi tramite


EntityReference<TEntity>.Load(MergeOption) Metodo

Definizione

Carica l'oggetto correlato per questo EntityReference<TEntity> oggetto con l'opzione di unione specificata.

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)

Parametri

mergeOption
MergeOption

Specifica il modo in cui l'oggetto deve essere restituito se esiste già in ObjectContext.

Eccezioni

L'origine EntityReference<TEntity> di è null.

-o-

Una query ha restituito più di una fine correlata.

-o-

Una query ha restituito zero estremità correlate e una fine correlata era prevista.

Commenti

Questo metodo viene utilizzato per caricare l'oggetto correlato.

Quando viene caricato, l'oggetto correlato è accessibile dalla Value proprietà .

Per caricare in modo esplicito gli oggetti correlati, è necessario chiamare il Load metodo sulla fine correlata restituita dalla proprietà di navigazione. Per una relazione uno-a-molti, chiamare il Load metodo su EntityCollection<TEntity>e per una relazione uno-a-uno, chiamare su LoadEntityReference<TEntity>. In questo modo i dati dell'oggetto correlati vengono caricati nel contesto dell'oggetto. Quando una query restituisce risultati, è possibile enumerare l'insieme di oggetti usando un foreach ciclo (For Each...Next in Visual Basic) e chiamare in modo condizionale il Load metodo su EntityReference<TEntity> e EntityCollection<TEntity> le proprietà per ogni entità nei risultati.

Il Load metodo carica gli oggetti correlati dall'origine dati indipendentemente dal fatto che IsLoaded sia true.

Nota

Quando si chiama il Load metodo durante un'enumerazione foreach (C#) o For Each (Visual Basic), Object Services tenta di aprire un nuovo lettore dati. Questa operazione avrà esito negativo a meno che non siano stati abilitati più set di risultati attivi specificando multipleactiveresultsets=true nella stringa di connessione. È anche possibile caricare il risultato della query in una List<T> raccolta. Chiude il lettore dati e consente di enumerare la raccolta per caricare gli oggetti a cui si fa riferimento.

Questo metodo chiama il metodo interno RelatedEnd.ValidateLoad prima di caricare l'oggetto correlato, che convalida che una chiamata a Load abbia le condizioni corrette. Il RelatedEnd.ValidateLoad metodo verifica che:

Quando l'oggetto correlato è già caricato in ObjectContext, il Load metodo applica l'oggetto MergeOption specificato dal mergeOption parametro . Per ulteriori informazioni, vedere Risoluzione delle identità, Gestione dello stato e Rilevamento delle modifiche.

Si applica a

Vedi anche