ObjectContext Klasa

Definicja

Udostępnia obiekty do wykonywania zapytań i pracy z danymi jednostki jako obiektami.

public ref class ObjectContext : IDisposable
public class ObjectContext : IDisposable
type ObjectContext = class
    interface IDisposable
Public Class ObjectContext
Implements IDisposable
Dziedziczenie
ObjectContext
Implementuje

Przykłady

W tym przykładzie pokazano, jak utworzyć obiekt 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);

Uwagi

Uwaga / Notatka

Klasa ObjectContext nie jest bezpieczna dla wątków. Nie można zapewnić integralności obiektów danych w ObjectContext scenariuszach wielowątkowych.

Klasa ObjectContext jest klasą podstawową do interakcji z danymi jako obiektów, które są wystąpieniami typów jednostek zdefiniowanych w modelu koncepcyjnym. Wystąpienie ObjectContext klasy hermetyzuje następujące elementy:

Gdy warstwa obiektu reprezentująca model koncepcyjny jest generowana przez narzędzia Entity Data Model, klasa reprezentująca EntityContainer model dla modelu pochodzi z ObjectContextklasy .

Konstruktory

Nazwa Opis
ObjectContext(EntityConnection, String)

Inicjuje nowe wystąpienie ObjectContext klasy z daną nazwą połączenia i kontenera jednostki.

ObjectContext(EntityConnection)

Inicjuje nowe wystąpienie ObjectContext klasy przy użyciu danego połączenia. Podczas budowy obszar roboczy metadanych jest wyodrębniany z EntityConnection obiektu.

ObjectContext(String, String)

Inicjuje nowe wystąpienie klasy ObjectContext o podanej nazwie kontenera parametry połączenia i jednostce.

ObjectContext(String)

Inicjuje nowe wystąpienie klasy ObjectContext o podanej parametry połączenia i domyślnej nazwie kontenera jednostek.

Właściwości

Nazwa Opis
CommandTimeout

Pobiera lub ustawia wartość limitu czasu w sekundach dla wszystkich operacji kontekstu obiektu. Wartość null wskazuje, że zostanie użyta wartość domyślna bazowego dostawcy.

Connection

Pobiera połączenie używane przez kontekst obiektu.

ContextOptions

ObjectContextOptions Pobiera wystąpienie, które zawiera opcje wpływające na zachowanie klasy ObjectContext.

DefaultContainerName

Pobiera lub ustawia domyślną nazwę kontenera.

MetadataWorkspace

Pobiera obszar roboczy metadanych używany przez kontekst obiektu.

ObjectStateManager

Pobiera menedżera stanu obiektu używanego przez kontekst obiektu do śledzenia zmian obiektów.

QueryProvider

Pobiera dostawcę zapytań LINQ skojarzonego z tym kontekstem obiektu.

Metody

Nazwa Opis
AcceptAllChanges()

Akceptuje wszystkie zmiany wprowadzone w obiektach w kontekście obiektu.

AddObject(String, Object)

Dodaje obiekt do kontekstu obiektu.

ApplyCurrentValues<TEntity>(String, TEntity)

Kopiuje wartości skalarne z dostarczonego obiektu do obiektu w ObjectContext obiekcie, który ma ten sam klucz.

ApplyOriginalValues<TEntity>(String, TEntity)

Kopiuje wartości skalarne z dostarczonego obiektu do zestawu oryginalnych wartości dla obiektu w tym samym kluczu ObjectContext .

ApplyPropertyChanges(String, Object)
Przestarzałe.

Stosuje zmiany właściwości z odłączonego obiektu do obiektu już dołączonego do kontekstu obiektu.

Attach(IEntityWithKey)

Dołącza wykres obiektu lub obiektu do kontekstu obiektu, gdy obiekt ma klucz jednostki.

AttachTo(String, Object)

Dołącza wykres obiektu lub obiektu do kontekstu obiektu w określonym zestawie jednostek.

CreateDatabase()

Tworzy bazę danych przy użyciu bieżącego połączenia źródła danych i metadanych w pliku StoreItemCollection.

CreateDatabaseScript()

Generuje skrypt języka definicji danych (DDL), który tworzy obiekty schematu (tabele, klucze podstawowe, klucze obce) dla metadanych w pliku StoreItemCollection. Ładuje StoreItemCollection metadane z plików języka definicji schematu magazynu (SSDL).

CreateEntityKey(String, Object)

Tworzy klucz jednostki dla określonego obiektu lub zwraca klucz jednostki, jeśli już istnieje.

CreateObject<T>()

Tworzy i zwraca wystąpienie żądanego typu .

CreateObjectSet<TEntity>()

Tworzy nowe ObjectSet<TEntity> wystąpienie używane do wykonywania zapytań, dodawania, modyfikowania i usuwania obiektów określonego typu jednostki.

CreateObjectSet<TEntity>(String)

Tworzy nowe ObjectSet<TEntity> wystąpienie używane do wykonywania zapytań, dodawania, modyfikowania i usuwania obiektów określonego typu oraz z określoną nazwą zestawu jednostek.

CreateProxyTypes(IEnumerable<Type>)

Generuje równoważny typ, który może być używany z platformą Entity Framework dla każdego typu w podanym wyliczeniem.

CreateQuery<T>(String, ObjectParameter[])

Tworzy obiekt ObjectQuery<T> w bieżącym kontekście obiektu przy użyciu określonego ciągu zapytania.

DatabaseExists()

Sprawdza, czy baza danych określona jako baza danych w bieżącym połączeniu źródła danych istnieje w źródle danych.

DeleteDatabase()

Usuwa bazę danych, która jest określona jako baza danych w bieżącym połączeniu ze źródłem danych.

DeleteObject(Object)

Oznacza obiekt do usunięcia.

Detach(Object)

Usuwa obiekt z kontekstu obiektu.

DetectChanges()

Gwarantuje, że ObjectStateEntry zmiany są synchronizowane ze zmianami we wszystkich obiektach śledzonych przez obiekt ObjectStateManager.

Dispose()

Zwalnia zasoby używane przez kontekst obiektu.

Dispose(Boolean)

Zwalnia zasoby używane przez kontekst obiektu.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
ExecuteFunction(String, ObjectParameter[])

Wykonuje procedurę składowaną lub funkcję zdefiniowaną w źródle danych i wyrażoną w modelu koncepcyjnym; odrzuca wszystkie wyniki zwrócone z funkcji; funkcja zwraca liczbę wierszy, których dotyczy wykonanie.

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

Wykonuje daną procedurę składowaną lub funkcję zdefiniowaną w źródle danych i wyrażoną w modelu koncepcyjnym z określonymi parametrami i opcją scalania. Zwraca typizowane ObjectResult<T>polecenie .

ExecuteFunction<TElement>(String, ObjectParameter[])

Wykonuje procedurę składowaną lub funkcję zdefiniowaną w źródle danych i zamapowaną w modelu koncepcyjnym z określonymi parametrami. Zwraca typizowane ObjectResult<T>polecenie .

ExecuteStoreCommand(String, Object[])

Wykonuje dowolne polecenie bezpośrednio względem źródła danych przy użyciu istniejącego połączenia.

ExecuteStoreQuery<TElement>(String, Object[])

Wykonuje zapytanie bezpośrednio względem źródła danych, które zwraca sekwencję wpisanych wyników.

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

Wykonuje zapytanie bezpośrednio względem źródła danych i zwraca sekwencję wpisanych wyników. Określ zestaw jednostek i opcję scalania, aby wyniki zapytania mogły być śledzone jako jednostki.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetKnownProxyTypes()

Zwraca wszystkie istniejące typy serwerów proxy.

GetObjectByKey(EntityKey)

Zwraca obiekt, który ma określony klucz jednostki.

GetObjectType(Type)

Zwraca typ jednostki POCO skojarzony z obiektem proxy określonego typu.

GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
LoadProperty(Object, String, MergeOption)

Jawnie ładuje obiekt powiązany z podanym obiektem przez określoną właściwość nawigacji i przy użyciu określonej opcji scalania.

LoadProperty(Object, String)

Jawnie ładuje obiekt powiązany z podanym obiektem przez określoną właściwość nawigacji i przy użyciu domyślnej opcji scalania.

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

Jawnie ładuje obiekt powiązany z podanym obiektem przez określone zapytanie LINQ i przy użyciu określonej opcji scalania.

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

Jawnie ładuje obiekt powiązany z podanym obiektem przez określone zapytanie LINQ i przy użyciu domyślnej opcji scalania.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
Refresh(RefreshMode, IEnumerable)

Aktualizuje kolekcję obiektów w kontekście obiektu przy użyciu danych ze źródła danych.

Refresh(RefreshMode, Object)

Aktualizuje obiekt w kontekście obiektu przy użyciu danych ze źródła danych.

SaveChanges()

Utrwala wszystkie aktualizacje źródła danych i resetuje śledzenie zmian w kontekście obiektu.

SaveChanges(Boolean)
Przestarzałe.

Utrwala wszystkie aktualizacje źródła danych i opcjonalnie resetuje śledzenie zmian w kontekście obiektu.

SaveChanges(SaveOptions)

Utrwala wszystkie aktualizacje źródła danych przy użyciu określonego SaveOptionselementu .

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
Translate<TElement>(DbDataReader)

Tłumaczy element DbDataReader zawierający wiersze danych jednostki na obiekty żądanego typu jednostki.

Translate<TEntity>(DbDataReader, String, MergeOption)

Tłumaczy element DbDataReader zawierający wiersze danych jednostki na obiekty żądanego typu jednostki w określonym zestawie jednostek i z określoną opcją scalania.

TryGetObjectByKey(EntityKey, Object)

Zwraca obiekt, który ma określony klucz jednostki.

Zdarzenia

Nazwa Opis
ObjectMaterialized

Występuje, gdy nowy obiekt jednostki jest tworzony na podstawie danych w źródle danych w ramach operacji zapytania lub ładowania.

SavingChanges

Występuje, gdy zmiany są zapisywane w źródle danych.

Dotyczy

Zobacz też