Condividi tramite


ObjectContext.LoadProperty Metodo

Definizione

Carica in modo esplicito un oggetto correlato quando si utilizzano classi di dati personalizzate POCO.

Overload

LoadProperty(Object, String)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla proprietà di navigazione specificata e utilizzando l'opzione di unione predefinita.

LoadProperty(Object, String, MergeOption)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla proprietà di navigazione specificata e utilizzando l'opzione di unione specificata.

LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>, MergeOption)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla query LINQ specificata e utilizzando l'opzione di unione specificata.

LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla query LINQ specificata e utilizzando l'opzione di unione predefinita.

Commenti

Quando si usano classi di dati personalizzate POCO, gli oggetti correlati non possono essere caricati in modo esplicito come istanze di tipi di entità generati dagli strumenti Entity Data Model. Ciò è dovuto al fatto che gli strumenti generano le proprietà di navigazione che restituiscono un EntityCollection<TEntity> oggetto o EntityReference<TEntity> di oggetti correlati quando Load viene chiamato su un oggetto RelatedEnd. È comunque possibile caricare le entità POCO usando il caricamento differita impostando la LazyLoadingEnabled proprietà su true sull'istanza di ObjectContextOptions restituita dalla ObjectContext.ContextOptions proprietà oppure usando il caricamento eager con il Include metodo in ObjectQuery<T>.

LoadProperty(Object, String)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla proprietà di navigazione specificata e utilizzando l'opzione di unione predefinita.

public:
 void LoadProperty(System::Object ^ entity, System::String ^ navigationProperty);
public void LoadProperty (object entity, string navigationProperty);
member this.LoadProperty : obj * string -> unit
Public Sub LoadProperty (entity As Object, navigationProperty As String)

Parametri

entity
Object

Entità per la quale devono essere caricati gli oggetti correlati.

navigationProperty
String

Nome della proprietà di navigazione che restituisce gli oggetti correlati da caricare.

Eccezioni

entity è in uno stato Detached, Added o Deleted,

-oppure-

Il parametro entity è associato all'altra istanza dell'oggetto ObjectContext.

Commenti

Il LoadProperty metodo deve essere chiamato per ottenere il caricamento esplicito quando si usano classi di dati personalizzate POCO.

Dopo aver chiamato LoadProperty, è possibile accedere all'oggetto correlato tramite le proprietà di navigazione dell'entità di origine.

Quando si usano classi di dati personalizzate POCO, gli oggetti correlati non possono essere caricati in modo esplicito come istanze di tipi di entità generati dagli strumenti Entity Data Model. Ciò è dovuto al fatto che gli strumenti generano le proprietà di navigazione che restituiscono un EntityCollection<TEntity> oggetto o EntityReference<TEntity> di oggetti correlati quando Load viene chiamato su un oggetto RelatedEnd. È comunque possibile caricare le entità POCO usando il caricamento differita impostando la LazyLoadingEnabled proprietà su true sull'istanza di ObjectContextOptions restituita dalla ObjectContext.ContextOptions proprietà oppure usando il caricamento eager con il Include metodo in ObjectQuery<T>.

Quando viene chiamato il LoadProperty metodo , gli oggetti vengono caricati in ObjectContext utilizzando il valore predefinito MergeOption di AppendOnly.

Si applica a

LoadProperty(Object, String, MergeOption)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla proprietà di navigazione specificata e utilizzando l'opzione di unione specificata.

public:
 void LoadProperty(System::Object ^ entity, System::String ^ navigationProperty, System::Data::Objects::MergeOption mergeOption);
public void LoadProperty (object entity, string navigationProperty, System.Data.Objects.MergeOption mergeOption);
member this.LoadProperty : obj * string * System.Data.Objects.MergeOption -> unit
Public Sub LoadProperty (entity As Object, navigationProperty As String, mergeOption As MergeOption)

Parametri

entity
Object

Entità per la quale devono essere caricati gli oggetti correlati.

navigationProperty
String

Nome della proprietà di navigazione che restituisce gli oggetti correlati da caricare.

mergeOption
MergeOption

Valore di MergeOption da utilizzare quando si caricano gli oggetti correlati.

Eccezioni

entity è in uno stato Detached, Added o Deleted,

-oppure-

Il parametro entity è associato all'altra istanza dell'oggetto ObjectContext.

Commenti

Il LoadProperty metodo deve essere chiamato per ottenere il caricamento esplicito quando si usano classi di dati personalizzate POCO.

Dopo aver chiamato LoadProperty, è possibile accedere all'oggetto correlato tramite le proprietà di navigazione dell'entità di origine.

Quando si usano classi di dati personalizzate POCO, gli oggetti correlati non possono essere caricati in modo esplicito come istanze di tipi di entità generati dagli strumenti Entity Data Model. Ciò è dovuto al fatto che gli strumenti generano le proprietà di navigazione che restituiscono un EntityCollection<TEntity> oggetto o EntityReference<TEntity> di oggetti correlati quando Load viene chiamato su un oggetto RelatedEnd. È comunque possibile caricare le entità POCO usando il caricamento differita impostando la LazyLoadingEnabled proprietà su true sull'istanza di ObjectContextOptions restituita dalla ObjectContext.ContextOptions proprietà oppure usando il caricamento eager con il Include metodo in ObjectQuery<T>.

Si applica a

LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>, MergeOption)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla query LINQ specificata e utilizzando l'opzione di unione specificata.

public:
generic <typename TEntity>
 void LoadProperty(TEntity entity, System::Linq::Expressions::Expression<Func<TEntity, System::Object ^> ^> ^ selector, System::Data::Objects::MergeOption mergeOption);
public void LoadProperty<TEntity> (TEntity entity, System.Linq.Expressions.Expression<Func<TEntity,object>> selector, System.Data.Objects.MergeOption mergeOption);
member this.LoadProperty : 'Entity * System.Linq.Expressions.Expression<Func<'Entity, obj>> * System.Data.Objects.MergeOption -> unit
Public Sub LoadProperty(Of TEntity) (entity As TEntity, selector As Expression(Of Func(Of TEntity, Object)), mergeOption As MergeOption)

Parametri di tipo

TEntity

Tipo dell'oggetto fornito.

Parametri

entity
TEntity

Oggetto di origine per il quale vengono caricati gli oggetti correlati.

selector
Expression<Func<TEntity,Object>>

Espressione LINQ che definisce gli oggetti correlati da caricare.

mergeOption
MergeOption

Valore di MergeOption da utilizzare quando si caricano gli oggetti correlati.

Eccezioni

selector non fornisce un parametro di input valido.

selector è null.

entity è in uno stato Detached, Added o Deleted,

-oppure-

Il parametro entity è associato all'altra istanza dell'oggetto ObjectContext.

Commenti

Il LoadProperty metodo deve essere chiamato per ottenere il caricamento esplicito quando si usano classi di dati personalizzate POCO.

Dopo aver chiamato LoadProperty, è possibile accedere all'oggetto correlato tramite le proprietà di navigazione dell'entità di origine.

La proprietà da caricare viene specificata da un'espressione LINQ, che deve essere sotto forma di accesso a un membro di proprietà semplice, come in (entity) => entity.PropertyName dove PropertyName è la proprietà di navigazione che restituisce gli oggetti correlati da caricare. Se vengono usate altre forme dell'espressione LINQ, si verificherà un'eccezione.

Quando si usano classi di dati personalizzate POCO, gli oggetti correlati non possono essere caricati in modo esplicito come istanze di tipi di entità generati dagli strumenti Entity Data Model. Ciò è dovuto al fatto che gli strumenti generano le proprietà di navigazione che restituiscono un EntityCollection<TEntity> oggetto o EntityReference<TEntity> di oggetti correlati quando Load viene chiamato su un oggetto RelatedEnd. È comunque possibile caricare le entità POCO usando il caricamento differita impostando la LazyLoadingEnabled proprietà su true sull'istanza di ObjectContextOptions restituita dalla ObjectContext.ContextOptions proprietà oppure usando il caricamento eager con il Include metodo in ObjectQuery<T>.

Si applica a

LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>)

Carica in modo esplicito un oggetto correlato all'oggetto fornito in base alla query LINQ specificata e utilizzando l'opzione di unione predefinita.

public:
generic <typename TEntity>
 void LoadProperty(TEntity entity, System::Linq::Expressions::Expression<Func<TEntity, System::Object ^> ^> ^ selector);
public void LoadProperty<TEntity> (TEntity entity, System.Linq.Expressions.Expression<Func<TEntity,object>> selector);
member this.LoadProperty : 'Entity * System.Linq.Expressions.Expression<Func<'Entity, obj>> -> unit
Public Sub LoadProperty(Of TEntity) (entity As TEntity, selector As Expression(Of Func(Of TEntity, Object)))

Parametri di tipo

TEntity

Tipo dell'oggetto fornito.

Parametri

entity
TEntity

Oggetto di origine per il quale vengono caricati gli oggetti correlati.

selector
Expression<Func<TEntity,Object>>

Espressione LINQ che definisce gli oggetti correlati da caricare.

Eccezioni

selector non fornisce un parametro di input valido.

selector è null.

entity è in uno stato Detached, Added o Deleted,

-oppure-

Il parametro entity è associato all'altra istanza dell'oggetto ObjectContext.

Commenti

Il LoadProperty metodo deve essere chiamato per ottenere il caricamento esplicito quando si usano classi di dati personalizzate POCO.

Dopo aver chiamato LoadProperty, è possibile accedere all'oggetto correlato tramite le proprietà di navigazione dell'entità di origine.

La proprietà da caricare viene specificata da un'espressione LINQ, che deve essere sotto forma di accesso a un membro di proprietà semplice, come in (entity) => entity.PropertyName, dove PropertyName è la proprietà di navigazione che restituisce gli oggetti correlati da caricare. Se vengono usate altre forme dell'espressione LINQ, si verificherà un'eccezione.

Quando si usano classi di dati personalizzate POCO, gli oggetti correlati non possono essere caricati in modo esplicito come istanze di tipi di entità generati dagli strumenti Entity Data Model. Ciò è dovuto al fatto che gli strumenti generano le proprietà di navigazione che restituiscono un EntityCollection<TEntity> oggetto o EntityReference<TEntity> di oggetti correlati quando Load viene chiamato su un oggetto RelatedEnd. È comunque possibile caricare le entità POCO usando il caricamento differita impostando la LazyLoadingEnabled proprietà su true sull'istanza di ObjectContextOptions restituita dalla ObjectContext.ContextOptions proprietà oppure usando il caricamento eager con il Include metodo in ObjectQuery<T>.

Si applica a