Condividi tramite


ObjectContext Classe

Definizione

Fornisce funzionalità per l'esecuzione di query e l'utilizzo di dati delle entità come oggetti.

public ref class ObjectContext : IDisposable
public class ObjectContext : IDisposable
type ObjectContext = class
    interface IDisposable
Public Class ObjectContext
Implements IDisposable
Ereditarietà
ObjectContext
Implementazioni

Esempio

In questo esempio viene illustrato come costruire un ObjectContextoggetto .

// Create the ObjectContext.
ObjectContext context =
    new ObjectContext("name=AdventureWorksEntities");

// Set the DefaultContainerName for the ObjectContext.
// When DefaultContainerName is set, the Entity Framework only
// searches for the type in the specified container.
// Note that if a type is defined only once in the metadata workspace
// you do not have to set the DefaultContainerName.
context.DefaultContainerName = "AdventureWorksEntities";

ObjectSet<Product> query = context.CreateObjectSet<Product>();

// Iterate through the collection of Products.
foreach (Product result in query)
    Console.WriteLine("Product Name: {0}", result.Name);

Commenti

Nota

La classe ObjectContext non è thread-safe. L'integrità degli oggetti dati in un oggetto ObjectContext non può essere garantita in scenari multithreading.

La ObjectContext classe è la classe primaria per interagire con i dati come oggetti che sono istanze di tipi di entità definiti in un modello concettuale. Un'istanza della classe ObjectContext incapsula gli elementi seguenti:

Quando il livello oggetto che rappresenta un modello concettuale viene generato dagli strumenti Entity Data Model, la classe che rappresenta l'oggetto EntityContainer per il modello viene derivata dall'oggetto ObjectContext.

Costruttori

ObjectContext(EntityConnection)

Inizializza una nuova istanza della classe ObjectContext con la connessione specificata. Durante la costruzione, l'area di lavoro metadati viene estratta dall'oggetto EntityConnection.

ObjectContext(EntityConnection, String)

Inizializza una nuova istanza della classe ObjectContext con la connessione e il nome del contenitore di entità specificati.

ObjectContext(String)

Inizializza una nuova istanza della classe ObjectContext con la stringa di connessione e il nome del contenitore di entità predefinito specificati.

ObjectContext(String, String)

Inizializza una nuova istanza della classe ObjectContext con la stringa di connessione e il nome del contenitore di entità specificati.

Proprietà

CommandTimeout

Ottiene o imposta il valore di timeout, espresso in secondi, per tutte le operazioni relative al contesto dell'oggetto. Il valore null indica che verrà utilizzato il valore predefinito del provider sottostante.

Connection

Ottiene la connessione utilizzata dal contesto dell'oggetto.

ContextOptions

Ottiene l'istanza di ObjectContextOptions che contiene le opzioni che influiscono sul comportamento di ObjectContext.

DefaultContainerName

Ottiene o imposta il nome del contenitore predefinito.

MetadataWorkspace

Ottiene l'area di lavoro metadati utilizzata dal contesto dell'oggetto.

ObjectStateManager

Ottiene il gestore degli stati dell'oggetto utilizzato dal contesto dell'oggetto per rilevare le modifiche dell'oggetto.

QueryProvider

Ottiene il provider della query LINQ associato a questo contesto dell'oggetto.

Metodi

AcceptAllChanges()

Accetta tutte le modifiche apportate agli oggetti nel contesto dell'oggetto.

AddObject(String, Object)

Aggiunge un oggetto al contesto dell'oggetto.

ApplyCurrentValues<TEntity>(String, TEntity)

Copia i valori scalari dall'oggetto fornito nell'oggetto in ObjectContext che dispone della stessa chiave.

ApplyOriginalValues<TEntity>(String, TEntity)

Copia i valori scalari dall'oggetto fornito nel set di valori originali per l'oggetto nell'oggetto ObjectContext con la stessa chiave.

ApplyPropertyChanges(String, Object)
Obsoleti.

Applica le modifiche delle proprietà da un oggetto disconnesso a un oggetto già connesso al contesto dell'oggetto.

Attach(IEntityWithKey)

Connette un oggetto o un oggetto grafico al contesto dell'oggetto quando l'oggetto contiene una chiave di entità.

AttachTo(String, Object)

Connette un oggetto o un oggetto grafico al contesto dell'oggetto in un set di entità specifico.

CreateDatabase()

Crea il database utilizzando la connessione all'origine dati corrente e i metadati in StoreItemCollection.

CreateDatabaseScript()

Genera uno script Data Definition Language (DDL) che crea oggetti dello schema (tabelle, chiavi primarie, chiavi esterne) per i metadati in StoreItemCollection. StoreItemCollection carica metadati dai file Store Schema Definition Language (SSDL).

CreateEntityKey(String, Object)

Crea la chiave di entità per un oggetto specifico o restituisce la chiave di entità se già esiste.

CreateObject<T>()

Crea e restituisce un'istanza del tipo richiesto.

CreateObjectSet<TEntity>()

Crea una nuova istanza di ObjectSet<TEntity> utilizzata per eseguire query su oggetti dell'entità specificata, aggiungere tali oggetti, modificarli ed eliminarli.

CreateObjectSet<TEntity>(String)

Crea una nuova istanza di ObjectSet<TEntity> utilizzata per eseguire query su oggetti del tipo specificato e con il nome del set di entità specificato, aggiungere tali oggetti, modificarli ed eliminarli.

CreateProxyTypes(IEnumerable<Type>)

Genera un tipo equivalente che può essere utilizzato con Entity Framework per ogni tipo nell'enumerazione fornita.

CreateQuery<T>(String, ObjectParameter[])

Crea un oggetto ObjectQuery<T> nel contesto dell'oggetto corrente utilizzando la stringa di query specificata.

DatabaseExists()

Controlla se il database specificato come database nella connessione all'origine dati corrente esiste nell'origine dati.

DeleteDatabase()

Elimina il database specificato come database nella connessione all'origine dati corrente.

DeleteObject(Object)

Contrassegna un oggetto per l'eliminazione.

Detach(Object)

Rimuove l'oggetto dal contesto dell'oggetto.

DetectChanges()

Assicura che le modifiche di ObjectStateEntry siano sincronizzate con le modifiche in tutti gli oggetti di cui tiene traccia ObjectStateManager.

Dispose()

Rilascia le risorse utilizzate dal contesto dell'oggetto.

Dispose(Boolean)

Rilascia le risorse utilizzate dal contesto dell'oggetto.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
ExecuteFunction(String, ObjectParameter[])

Esegue una stored procedure o una funzione definita nell'origine dati ed espressa nel modello concettuale, rimuove qualsiasi risultato restituito dalla funzione e restituisce il numero di righe interessate dall'esecuzione.

ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[])

Esegue la stored procedure o la funzione specificata, definita nell'origine dati ed espressa nel modello concettuale, con i parametri specificati e l'opzione di unione. Restituisce un oggetto ObjectResult<T> tipizzato.

ExecuteFunction<TElement>(String, ObjectParameter[])

Esegue una stored procedure o una funzione definita nell'origine dati e mappata nel modello concettuale, con i parametri specificati. Restituisce un oggetto ObjectResult<T> tipizzato.

ExecuteStoreCommand(String, Object[])

Esegue un comando arbitrario direttamente sull'origine dati utilizzando la connessione esistente.

ExecuteStoreQuery<TElement>(String, Object[])

Esegue una query direttamente sull'origine dati che restituisce una sequenza di risultati tipizzati.

ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])

Esegue una query direttamente sull'origine dati e restituisce una sequenza di risultati tipizzati. Specificare il set di entità e l'opzione di unione in modo da poter rilevare i risultati della query come entità.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetKnownProxyTypes()

Restituisce tutti i tipi di proxy esistenti.

GetObjectByKey(EntityKey)

Restituisce un oggetto contenente la chiave di entità specificata.

GetObjectType(Type)

Restituisce il tipo di entità dell'entità POCO associata a un oggetto proxy di un tipo specificato.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
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>>)

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

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.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
Refresh(RefreshMode, IEnumerable)

Aggiorna una raccolta di oggetti nel contesto dell'oggetto con i dati presenti nell'origine dati.

Refresh(RefreshMode, Object)

Aggiorna un oggetto nel contesto dell'oggetto con i dati presenti nell'origine dati.

SaveChanges()

Rende persistenti tutti gli aggiornamenti all'origine dati e reimposta il rilevamento delle modifiche nel contesto dell'oggetto.

SaveChanges(Boolean)
Obsoleti.

Rende persistenti tutti gli aggiornamenti all'origine dati e reimposta facoltativamente il rilevamento delle modifiche nel contesto dell'oggetto.

SaveChanges(SaveOptions)

Rende persistenti tutti gli aggiornamenti all'origine dati con l'oggetto SaveOptions specificato.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
Translate<TElement>(DbDataReader)

Converte un oggetto DbDataReader che contiene righe di dati di entità in oggetti del tipo di entità richiesto.

Translate<TEntity>(DbDataReader, String, MergeOption)

Converte un oggetto DbDataReader che contiene righe di dati di entità in oggetti del tipo di entità richiesto, in un set di entità specifico e con l'opzione di unione specificata.

TryGetObjectByKey(EntityKey, Object)

Restituisce un oggetto contenente la chiave di entità specificata.

Eventi

ObjectMaterialized

Si verifica quando un nuovo oggetto entità viene creato dai dati nell'origine dati come parte di una query o di un'operazione di caricamento.

SavingChanges

Si verifica quando le modifiche vengono salvate nell'origine dati.

Si applica a

Vedi anche