Condividi tramite


ObjectContext Classe

Definizione

Fornisce funzionalità per l'esecuzione di query e l'uso di dati di 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 oggetto ObjectContext.

// 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

Annotazioni

La classe ObjectContext non è thread-safe. Non è possibile garantire l'integrità degli oggetti dati in uno ObjectContext scenario 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 ObjectContext classe incapsula quanto segue:

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 da ObjectContext.

Costruttori

Nome Descrizione
ObjectContext(EntityConnection, String)

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

ObjectContext(EntityConnection)

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

ObjectContext(String, String)

Inizializza una nuova istanza della classe ObjectContext con un determinato nome di contenitore di stringa di connessione ed entità.

ObjectContext(String)

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

Proprietà

Nome Descrizione
CommandTimeout

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

Connection

Ottiene la connessione utilizzata dal contesto dell'oggetto.

ContextOptions

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

DefaultContainerName

Ottiene o imposta il nome del contenitore predefinito.

MetadataWorkspace

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

ObjectStateManager

Ottiene il gestore dello stato dell'oggetto utilizzato dal contesto dell'oggetto per tenere traccia delle modifiche dell'oggetto.

QueryProvider

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

Metodi

Nome Descrizione
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 ha la stessa chiave.

ApplyOriginalValues<TEntity>(String, TEntity)

Copia i valori scalari dall'oggetto fornito in un set di valori originali per l'oggetto in ObjectContext che ha la stessa chiave.

ApplyPropertyChanges(String, Object)
Obsoleti.

Applica le modifiche alle proprietà da un oggetto scollegato a un oggetto già collegato al contesto dell'oggetto.

Attach(IEntityWithKey)

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

AttachTo(String, Object)

Collega 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 DDL (Data Definition Language) che crea oggetti schema (tabelle, chiavi primarie, chiavi esterne) per i metadati in StoreItemCollection. Carica StoreItemCollection i metadati dai file SSDL (Schema Definition Language).

CreateEntityKey(String, Object)

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

CreateObject<T>()

Crea e restituisce un'istanza del tipo richiesto.

CreateObjectSet<TEntity>()

Crea una nuova ObjectSet<TEntity> istanza usata per eseguire query, aggiungere, modificare ed eliminare oggetti del tipo di entità specificato.

CreateObjectSet<TEntity>(String)

Crea una nuova ObjectSet<TEntity> istanza usata per eseguire query, aggiungere, modificare ed eliminare oggetti del tipo specificato e con il nome del set di entità specificato.

CreateProxyTypes(IEnumerable<Type>)

Genera un tipo equivalente che può essere usato 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 ObjectStateEntry le modifiche vengano sincronizzate con le modifiche in tutti gli oggetti rilevati da ObjectStateManager.

Dispose()

Rilascia le risorse usate dal contesto dell'oggetto.

Dispose(Boolean)

Rilascia le risorse usate 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 tutti i risultati restituiti 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 tipizzato ObjectResult<T>.

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 tipizzato ObjectResult<T>.

ExecuteStoreCommand(String, Object[])

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

ExecuteStoreQuery<TElement>(String, Object[])

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

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

Esegue una query direttamente sull'origine dati e restituisce una sequenza di risultati tipizzato. Specificare il set di entità e l'opzione di unione in modo che i risultati della query possano essere rilevati come entità.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetKnownProxyTypes()

Restituisce tutti i tipi di proxy esistenti.

GetObjectByKey(EntityKey)

Restituisce un oggetto con 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 il Type dell'istanza corrente.

(Ereditato da Object)
LoadProperty(Object, String, MergeOption)

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

LoadProperty(Object, String)

Carica in modo esplicito un oggetto correlato all'oggetto fornito dalla proprietà di navigazione 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 dalla query LINQ specificata e usando l'opzione di unione specificata.

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

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

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
Refresh(RefreshMode, IEnumerable)

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

Refresh(RefreshMode, Object)

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

SaveChanges()

Salva in modo permanente tutti gli aggiornamenti all'origine dati e reimposta il rilevamento delle modifiche nel contesto dell'oggetto.

SaveChanges(Boolean)
Obsoleti.

Salva in modo permanente tutti gli aggiornamenti all'origine dati e, facoltativamente, reimposta il rilevamento delle modifiche nel contesto dell'oggetto.

SaveChanges(SaveOptions)

Salva in modo permanente tutti gli aggiornamenti all'origine dati con l'oggetto specificato SaveOptions.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

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

Converte un oggetto DbDataReader contenente 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 con la chiave di entità specificata.

Eventi

Nome Descrizione
ObjectMaterialized

Si verifica quando viene creato un nuovo oggetto entità 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