Condividi tramite


Classe ObjectQuery

[Questa pagina è specifica della versione 6 di Entity Framework. La versione più recente è disponibile come pacchetto NuGet per "Entity Framework". Per ulteriori informazioni su Entity Framework, vedere la pagina msdn.com/data/ef.]

Questa classe implementa query non tipizzate a livello oggetti.

Gerarchia di ereditarietà

System.Object
  System.Data.Entity.Core.Objects.ObjectQuery
    System.Data.Entity.Core.Objects.ObjectQuery<T>

Spazio dei nomi:  System.Data.Entity.Core.Objects
Assembly:  EntityFramework (in EntityFramework.dll)

Sintassi

'Dichiarazione
<SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")> _
<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")> _
Public MustInherit Class ObjectQuery _
    Implements IOrderedQueryable, IQueryable, IEnumerable, IListSource,  _
    IDbAsyncEnumerable
'Utilizzo
Dim instance As ObjectQuery
[SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")]
[SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")]
public abstract class ObjectQuery : IOrderedQueryable, 
    IQueryable, IEnumerable, IListSource, IDbAsyncEnumerable
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1010:CollectionsShouldImplementGenericInterface")]
[SuppressMessageAttribute(L"Microsoft.Naming", L"CA1710:IdentifiersShouldHaveCorrectSuffix")]
public ref class ObjectQuery abstract : IOrderedQueryable, 
    IQueryable, IEnumerable, IListSource, IDbAsyncEnumerable
[<AbstractClassAttribute>]
[<SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")>]
[<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")>]
type ObjectQuery =  
    class 
        interface IOrderedQueryable 
        interface IQueryable 
        interface IEnumerable 
        interface IListSource 
        interface IDbAsyncEnumerable 
    end
public abstract class ObjectQuery implements IOrderedQueryable, IQueryable, IEnumerable, IListSource, IDbAsyncEnumerable

Il tipo ObjectQuery espone i seguenti membri.

Proprietà

  rapporti Descrizione
Proprietà pubblica CommandText Restituisce il testo del comando per la query.
Proprietà pubblica Context Ottiene il contesto dell'oggetto associato a questa query di oggetto.
Proprietà pubblica EnablePlanCaching Ottiene o imposta un valore che indica se il piano di query deve essere memorizzato nella cache.
Proprietà pubblica MergeOption Ottiene o imposta il modo in cui gli oggetti restituiti da una query vengono aggiunti al contesto dell'oggetto.
Proprietà pubblica Parameters Ottiene la raccolta di parametri per questa query di oggetto.
Proprietà pubblica Streaming Indica se la query è di flusso o di buffer

In alto

Metodi

  rapporti Descrizione
Metodo pubblico Equals (Ereditato da Object)
Metodo pubblico Execute Esegue la query di oggetto non tipizzata con l'opzione di unione specificata.
Metodo pubblico ExecuteAsync(MergeOption) Esegue in modo asincrono la query di oggetto non tipizzata con l'opzione di unione specificata.
Metodo pubblico ExecuteAsync(MergeOption, CancellationToken) Esegue in modo asincrono la query di oggetto non tipizzata con l'opzione di unione specificata.
Metodo protetto Finalize (Ereditato da Object)
Metodo pubblico GetHashCode (Ereditato da Object)
Metodo pubblico GetResultType Restituisce le informazioni sul tipo di risultato della query.
Metodo pubblico GetType (Ereditato da Object)
Metodo protetto MemberwiseClone (Ereditato da Object)
Metodo pubblico ToString (Ereditato da Object)
Metodo pubblico ToTraceString Restituisce i comandi per l'esecuzione sull'origine dati.

In alto

Metodi di estensione

  rapporti Descrizione
Metodo di estensione pubblico AsNoTracking Restituisce una nuova query in cui le entità restituite non verranno memorizzate nella cache di DbContext o ObjectContext.Questo metodo si utilizza chiamando il metodo AsNoTracking dell'oggetto query sottostante.Se l'oggetto query sottostante non dispone di un metodo AsNoTracking, la chiamata a questo metodo non avrà alcun effetto. (Definito da QueryableExtensions).
Metodo di estensione pubblico AsStreaming Restituisce una nuova query che trasmetterà come flusso e non come buffer i risultati.Questo metodo si utilizza chiamando il metodo AsStreaming dell'oggetto query sottostante.Se l'oggetto query sottostante non dispone di un metodo AsStreaming, la chiamata a questo metodo non avrà alcun effetto. (Definito da QueryableExtensions).
Metodo di estensione pubblico ForEachAsync(Action<Object>) Di overload. Restituisce in modo asincrono i risultati della query ed esegue l'azione specificata su ogni elemento. (Definito da QueryableExtensions).
Metodo di estensione pubblico ForEachAsync(Action<Object>, CancellationToken) Di overload. Restituisce in modo asincrono i risultati della query ed esegue l'azione specificata su ogni elemento. (Definito da QueryableExtensions).
Metodo di estensione pubblico Include Specifica gli oggetti correlati da includere nei risultati della query. (Definito da QueryableExtensions).
Metodo di estensione pubblico Load Enumera la query in modo che per le query del server, ad esempio quelle di DbSet<TEntity>, ObjectSet<TEntity>, ObjectQuery<T> e altre, i risultati della query verranno caricati nell'oggetto DbContext associato, in ObjectContext o in altra cache del client.Ciò equivale a chiamare ToList e a eliminare l'elenco senza l'overhead dell'effettiva creazione dell'elenco. (Definito da QueryableExtensions).
Metodo di estensione pubblico LoadAsync() Di overload. Enumera in modo asincrono la query in modo che per le query del server, ad esempio quelle di DbSet<TEntity>, ObjectSet<TEntity>, ObjectQuery<T> e altre, i risultati della query verranno caricati nell'oggetto DbContext associato, in ObjectContext o in altra cache del client.Ciò equivale a chiamare ToList e a eliminare l'elenco senza l'overhead dell'effettiva creazione dell'elenco. (Definito da QueryableExtensions).
Metodo di estensione pubblico LoadAsync(CancellationToken) Di overload. Enumera in modo asincrono la query in modo che per le query del server, ad esempio quelle di DbSet<TEntity>, ObjectSet<TEntity>, ObjectQuery<T> e altre, i risultati della query verranno caricati nell'oggetto DbContext associato, in ObjectContext o in altra cache del client.Ciò equivale a chiamare ToList e a eliminare l'elenco senza l'overhead dell'effettiva creazione dell'elenco. (Definito da QueryableExtensions).
Metodo di estensione pubblico ToListAsync() Di overload. Crea un oggetto List<T> da un oggetto IQueryable enumerandolo in modo asincrono. (Definito da QueryableExtensions).
Metodo di estensione pubblico ToListAsync(CancellationToken) Di overload. Crea un oggetto List<T> da un oggetto IQueryable enumerandolo in modo asincrono. (Definito da QueryableExtensions).

In alto

Implementazioni esplicite dell'interfaccia

  rapporti Descrizione
Implementazione esplicita dell'interfacciaProprietà privata IListSource.ContainsListCollection Ottiene un valore che indica se la query contiene una raccolta di oggetti query.
Implementazione esplicita dell'interfacciaProprietà privata IQueryable.ElementType Ottiene il tipo di elemento del risultato per questa istanza della query.
Implementazione esplicita dell'interfacciaProprietà privata IQueryable.Expression Ottiene l'espressione che descrive questa query.Per le query compilate utilizzando i modelli del generatore LINQ, restituisce un albero delle espressioni LINQ completo; in caso contrario restituisce un'espressione costante che esegue il wrapping della query.Notare che l'espressione predefinita non viene memorizzata nella cache.In questo modo è possibile fare distinzione tra le query LINQ e le query Entity-SQL.
Implementazione esplicita dell'interfacciaMetodo privato IEnumerable.GetEnumerator Restituisce un enumeratore che scorre una raccolta.
Implementazione esplicita dell'interfacciaMetodo privato IListSource.GetList Restituisce la raccolta come IList utilizzato per l'associazione dati.
Implementazione esplicita dell'interfacciaProprietà privata IQueryable.Provider Ottiene l'oggetto IQueryProvider associato all'istanza della query.
Implementazione esplicita dell'interfacciaMetodo privato IDbAsyncEnumerable.GetAsyncEnumerator Restituisce un oggetto IDbAsyncEnumerator che, se enumerato, eseguirà la query SQL specificata nel database.

In alto

Thread safety

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. Non è invece garantita la sicurezza dei membri dell'istanza.

Vedere anche

Riferimento

Spazio dei nomi System.Data.Entity.Core.Objects