Sdílet prostřednictvím


ObjectContext Třída

Definice

Poskytuje zařízení pro dotazování a práci s daty entit jako objekty.

public ref class ObjectContext : IDisposable
public class ObjectContext : IDisposable
type ObjectContext = class
    interface IDisposable
Public Class ObjectContext
Implements IDisposable
Dědičnost
ObjectContext
Implementuje

Příklady

Tento příklad ukazuje, jak vytvořit 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);

Poznámky

Poznámka:

Třída ObjectContext není bezpečná z hlediska vláken. Integritu datových objektů v systému nelze ObjectContext zajistit ve scénářích s více vlákny.

ObjectContext Třída je primární třídou pro interakci s daty jako objekty, které jsou instancemi typů entit, které jsou definovány v konceptuálním modelu. Instance ObjectContext třídy zapouzdřuje následující:

Pokud je vrstva objektu, která představuje konceptuální model vygenerována nástroji Entity Data Model, třída, která představuje EntityContainer pro model, je odvozena z ObjectContext.

Konstruktory

Name Description
ObjectContext(EntityConnection, String)

Inicializuje novou instanci ObjectContext třídy s daným názvem připojení a kontejneru entity.

ObjectContext(EntityConnection)

Inicializuje novou instanci ObjectContext třídy s daným připojením. Během sestavování se pracovní prostor metadat extrahuje z objektu EntityConnection .

ObjectContext(String, String)

Inicializuje novou instanci třídy ObjectContext s daným připojovací řetězec a názvem kontejneru entity.

ObjectContext(String)

Inicializuje novou instanci třídy ObjectContext s daným připojovací řetězec a výchozím názvem kontejneru entity.

Vlastnosti

Name Description
CommandTimeout

Získá nebo nastaví hodnotu časového limitu v sekundách pro všechny operace kontextu objektu. Hodnota null označuje, že se použije výchozí hodnota podkladového zprostředkovatele.

Connection

Získá připojení používané kontextem objektu.

ContextOptions

ObjectContextOptions Získá instanci, která obsahuje možnosti, které ovlivňují chování ObjectContext.

DefaultContainerName

Získá nebo nastaví výchozí název kontejneru.

MetadataWorkspace

Získá pracovní prostor metadat používaný kontextem objektu.

ObjectStateManager

Získá správce stavu objektu používaný kontextem objektu ke sledování změn objektu.

QueryProvider

Získá zprostředkovatel dotazu LINQ přidružený k tomuto kontextu objektu.

Metody

Name Description
AcceptAllChanges()

Přijímá všechny změny provedené v objektech v kontextu objektu.

AddObject(String, Object)

Přidá objekt do kontextu objektu.

ApplyCurrentValues<TEntity>(String, TEntity)

Zkopíruje skalární hodnoty ze zadaného objektu do objektu ve ObjectContext stejném klíči.

ApplyOriginalValues<TEntity>(String, TEntity)

Zkopíruje skalární hodnoty ze zadaného objektu do sady původních hodnot objektu ObjectContext ve stejném klíči.

ApplyPropertyChanges(String, Object)
Zastaralé.

Použije změny vlastností z odpojeného objektu na objekt, který je již připojen k kontextu objektu.

Attach(IEntityWithKey)

Připojí objekt nebo objektový graf k kontextu objektu, pokud má objekt klíč entity.

AttachTo(String, Object)

Připojí objekt nebo objektový graf k kontextu objektu v konkrétní sadě entit.

CreateDatabase()

Vytvoří databázi pomocí aktuálního připojení ke zdroji dat a metadat v objektu StoreItemCollection.

CreateDatabaseScript()

Vygeneruje skript DDL (Data Definition Language), který vytvoří objekty schématu (tabulky, primární klíče, cizí klíče) pro metadata v objektu StoreItemCollection. Načte StoreItemCollection metadata ze souborů SSDL (Store Schema Definition Language).

CreateEntityKey(String, Object)

Vytvoří klíč entity pro konkrétní objekt nebo vrátí klíč entity, pokud již existuje.

CreateObject<T>()

Vytvoří a vrátí instanci požadovaného typu .

CreateObjectSet<TEntity>()

Vytvoří novou ObjectSet<TEntity> instanci, která se použije k dotazování, přidání, úpravě a odstranění objektů zadaného typu entity.

CreateObjectSet<TEntity>(String)

Vytvoří novou ObjectSet<TEntity> instanci, která se použije k dotazování, přidání, úpravě a odstranění objektů zadaného typu a se zadaným názvem sady entit.

CreateProxyTypes(IEnumerable<Type>)

Vygeneruje ekvivalentní typ, který lze použít s Entity Framework pro každý typ v zadané výčtu.

CreateQuery<T>(String, ObjectParameter[])

ObjectQuery<T> Vytvoří v aktuálním kontextu objektu pomocí zadaného řetězce dotazu.

DatabaseExists()

Zkontroluje, jestli databáze zadaná jako databáze v aktuálním připojení ke zdroji dat existuje.

DeleteDatabase()

Odstraní databázi, která je zadaná jako databáze v aktuálním připojení ke zdroji dat.

DeleteObject(Object)

Označí objekt pro odstranění.

Detach(Object)

Odebere objekt z kontextu objektu.

DetectChanges()

Zajišťuje synchronizaci ObjectStateEntry změn se změnami ve všech objektech, které jsou sledovány ObjectStateManager.

Dispose()

Uvolní prostředky používané kontextem objektu.

Dispose(Boolean)

Uvolní prostředky používané kontextem objektu.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
ExecuteFunction(String, ObjectParameter[])

Spustí uloženou proceduru nebo funkci, která je definována ve zdroji dat a vyjádřena v koncepčním modelu; zahodí všechny výsledky vrácené funkcí; a vrátí počet řádků ovlivněných spuštěním.

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

Provede danou uloženou proceduru nebo funkci definovanou ve zdroji dat a vyjádřenou v koncepčním modelu se zadanými parametry a možností sloučení. Vrátí typ .ObjectResult<T>

ExecuteFunction<TElement>(String, ObjectParameter[])

Spustí uloženou proceduru nebo funkci, která je definována ve zdroji dat a mapována v koncepčním modelu se zadanými parametry. Vrátí typ .ObjectResult<T>

ExecuteStoreCommand(String, Object[])

Spustí libovolný příkaz přímo proti zdroji dat pomocí existujícího připojení.

ExecuteStoreQuery<TElement>(String, Object[])

Spustí dotaz přímo na zdroj dat, který vrátí posloupnost zadaných výsledků.

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

Spustí dotaz přímo proti zdroji dat a vrátí sekvenci zadaných výsledků. Zadejte sadu entit a možnost sloučení, aby bylo možné výsledky dotazu sledovat jako entity.

GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetKnownProxyTypes()

Vrátí všechny existující typy proxy.

GetObjectByKey(EntityKey)

Vrátí objekt, který má zadaný klíč entity.

GetObjectType(Type)

Vrátí typ entity POCO přidružené k objektu proxy zadaného typu.

GetType()

Získá Type aktuální instance.

(Zděděno od Object)
LoadProperty(Object, String, MergeOption)

Explicitně načte objekt, který souvisí se zadaným navigačním objektem a pomocí zadané možnosti sloučení.

LoadProperty(Object, String)

Explicitně načte objekt související se zadaným navigačním objektem a použije výchozí možnost sloučení.

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

Explicitně načte objekt, který souvisí se zadaným dotazem LINQ, a pomocí zadané možnosti sloučení.

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

Explicitně načte objekt, který souvisí se zadaným dotazem LINQ, a pomocí výchozí možnosti sloučení.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
Refresh(RefreshMode, IEnumerable)

Aktualizuje kolekci objektů v kontextu objektu daty ze zdroje dat.

Refresh(RefreshMode, Object)

Aktualizuje objekt v kontextu objektu daty ze zdroje dat.

SaveChanges()

Zachovává všechny aktualizace zdroje dat a resetuje sledování změn v kontextu objektu.

SaveChanges(Boolean)
Zastaralé.

Zachová všechny aktualizace zdroje dat a volitelně resetuje sledování změn v kontextu objektu.

SaveChanges(SaveOptions)

Zachová všechny aktualizace zdroje dat se zadaným SaveOptionskódem .

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
Translate<TElement>(DbDataReader)

Převede řádky DbDataReader dat entity na objekty požadovaného typu entity.

Translate<TEntity>(DbDataReader, String, MergeOption)

DbDataReader Převede řádky dat entity na objekty požadovaného typu entity, v konkrétní sadě entit a se zadanou možností sloučení.

TryGetObjectByKey(EntityKey, Object)

Vrátí objekt, který má zadaný klíč entity.

Událost

Name Description
ObjectMaterialized

Nastane, když se v rámci dotazu nebo operace načítání vytvoří nový objekt entity z dat ve zdroji dat.

SavingChanges

Nastane, když se změny uloží do zdroje dat.

Platí pro

Viz také