ObjectContext.LoadProperty Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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>.