ObjectContext Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
ObjectContext je objekt nejvyšší úrovně, který zapouzdřuje připojení mezi CLR a databází a slouží jako brána pro operace Create, Read, Update a Delete.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
public class ObjectContext : IDisposable, System.Data.Entity.Infrastructure.IObjectContextAdapter
type ObjectContext = class
interface IDisposable
interface IObjectContextAdapter
Public Class ObjectContext
Implements IDisposable, IObjectContextAdapter
- Dědičnost
-
ObjectContext
- Atributy
- Implementuje
Konstruktory
ObjectContext(EntityConnection) |
Inicializuje novou instanci ObjectContext třídy s daným připojením. Během výstavby se z objektu EntityConnection extrahuje pracovní prostor metadat. |
ObjectContext(EntityConnection, Boolean) |
Vytvoří ObjectContext s daným připojením a pracovním prostorem metadat. |
ObjectContext(EntityConnection, String) |
Inicializuje novou instanci ObjectContext třídy s daným připojením a názvem kontejneru entity. |
ObjectContext(String) |
Inicializuje novou instanci ObjectContext třídy s daným připojovacím řetězcem a výchozím názvem kontejneru entity. |
ObjectContext(String, String) |
Inicializuje novou instanci ObjectContext třídy s daným připojovacím řetězcem a názvem kontejneru entity. |
Vlastnosti
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é mají vliv na chování objektu ObjectContext . |
DefaultContainerName |
Získá nebo nastaví výchozí název kontejneru. |
InterceptionContext |
Vrátí objekt DbInterceptionContext použitý pro tento kontext. |
MetadataWorkspace |
Získá pracovní prostor metadat používaný kontextem objektu. |
ObjectStateManager |
Získá správce stavu objektu používá kontext objektu ke sledování změn objektu. |
QueryProvider |
Získá LINQ zprostředkovatele dotazu přidruženého k tomuto kontextu objektu. |
TransactionHandler |
Získá obslužnou rutinu transakce v tomto kontextu. Pokud nebyla zahájena žádná transakce, může mít hodnotu null. |
Metody
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 ObjectContext , který má stejný klíč. |
ApplyOriginalValues<TEntity>(String, TEntity) |
Zkopíruje skalární hodnoty ze zadaného objektu do sady původních hodnot pro objekt, ObjectContext který má stejný klíč. |
ApplyPropertyChanges(String, Object) |
Zastaralé.
Použije změny vlastností z odpojeného objektu na objekt, který je již připojen ke kontextu objektu. |
Attach(IEntityWithKey) |
Připojí graf objektu nebo objektu ke kontextu objektu, pokud má objekt klíč entity. |
AttachTo(String, Object) |
Připojí graf objektů nebo objektů ke 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 jazyka 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ů jazyka 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žívá k dotazování, přidávání, úpravám a odstraňování objektů zadaného typu entity. |
CreateObjectSet<TEntity>(String) |
Vytvoří novou ObjectSet<TEntity> instanci, která se používá k dotazování, přidávání, úpravám a odstraňová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ém výčtu. |
CreateQuery<T>(String, ObjectParameter[]) |
Vytvoří objekt ObjectQuery<T> v kontextu aktuálního objektu pomocí zadaného řetězce dotazu. |
DatabaseExists() |
Zkontroluje, jestli v úložišti existuje databáze, která je zadána jako databáze v aktuálním připojení k úložišti. Většinu skutečné práce provádí implementace DbProviderServices pro aktuální připojení k úložišti. |
DeleteDatabase() |
Odstraní databázi, která je zadána jako databáze v aktuálním připojení ke zdroji dat. |
DeleteObject(Object) |
Označí objekt k 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 objektem ObjectStateManager . |
Dispose() |
Uvolní prostředky používané kontextem objektu. |
Dispose(Boolean) |
Uvolní prostředky používané kontextem objektu. |
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é z funkce; a vrátí počet řádků ovlivněných prováděním. |
ExecuteFunction<TElement>(String, ExecutionOptions, ObjectParameter[]) |
Spustí danou funkci ve výchozím kontejneru. |
ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[]) |
Provede danou uloženou proceduru nebo funkci, která je definována ve zdroji dat a vyjádřena 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í. Příkaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreCommand("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreCommand("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreCommand(TransactionalBehavior, String, Object[]) |
Spustí libovolný příkaz přímo proti zdroji dat pomocí existujícího připojení. Příkaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreCommand("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreCommand("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreCommandAsync(String, CancellationToken, Object[]) |
Asynchronně spustí libovolný příkaz přímo proti zdroji dat pomocí existujícího připojení. Příkaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreCommandAsync(String, Object[]) |
Asynchronně spustí libovolný příkaz přímo proti zdroji dat pomocí existujícího připojení. Příkaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreCommandAsync(TransactionalBehavior, String, CancellationToken, Object[]) |
Asynchronně spustí libovolný příkaz přímo proti zdroji dat pomocí existujícího připojení. Příkaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreCommandAsync(TransactionalBehavior, String, Object[]) |
Asynchronně spustí libovolný příkaz přímo proti zdroji dat pomocí existujícího připojení. Příkaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreCommandAsync("UPDATE dbo. Příspěvky SET Hodnocení = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQuery<TElement>(String, ExecutionOptions, Object[]) |
Spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Výsledky nejsou sledovány kontextem, použijte přetížení, které určuje název sady entit ke sledování výsledků. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQuery<TElement>(String, Object[]) |
Spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Výsledky nejsou sledovány kontextem, použijte přetížení, které určuje název sady entit ke sledování výsledků. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQuery<TElement>(String, String, ExecutionOptions, Object[]) |
Spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Pokud je zadán název sady entit, výsledky jsou sledovány kontextem. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQuery<TElement>(String, String, MergeOption, Object[]) |
Spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Pokud je zadán název sady entit, výsledky jsou sledovány kontextem. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQueryAsync<TElement>(String, CancellationToken, Object[]) |
Asynchronně spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Výsledky nejsou sledovány kontextem, použijte přetížení, které určuje název sady entit ke sledování výsledků. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, CancellationToken, Object[]) |
Asynchronně spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Výsledky nejsou sledovány kontextem, použijte přetížení, které určuje název sady entit ke sledování výsledků. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, Object[]) |
Asynchronně spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Výsledky nejsou sledovány kontextem, použijte přetížení, které určuje název sady entit ke sledování výsledků. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQueryAsync<TElement>(String, Object[]) |
Asynchronně spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Výsledky nejsou sledovány kontextem, použijte přetížení, které určuje název sady entit ke sledování výsledků. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, CancellationToken, Object[]) |
Asynchronně spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Pokud je zadán název sady entit, výsledky jsou sledovány kontextem. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, Object[]) |
Asynchronně spustí dotaz přímo na zdroj dat a vrátí posloupnost zadaných výsledků. Dotaz se zadává pomocí nativního dotazovacího jazyka serveru, například SQL. Pokud je zadán název sady entit, výsledky jsou sledovány kontextem. Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @p0", userSuppliedAuthor); Alternativně můžete také vytvořit DbParameter a poskytnout ho sqlQuery. To vám umožní použít pojmenované parametry v řetězci dotazu SQL. Kontextu. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Příspěvky WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); |
Finalize() |
Dokončí instanci ObjectContext třídy. |
GetKnownProxyTypes() |
Vrátí všechny existující typy proxy serveru. |
GetObjectByKey(EntityKey) |
Vrátí objekt, který má zadaný klíč entity. |
GetObjectType(Type) |
Vrátí typ entity entity POCO přidružené k objektu proxy zadaného typu. |
LoadProperty(Object, String) |
Explicitně načte objekt související s zadaným objektem pomocí zadané navigační vlastnosti a pomocí výchozí možnosti sloučení. |
LoadProperty(Object, String, MergeOption) |
Explicitně načte objekt, který souvisí s zadaným objektem pomocí zadané navigační vlastnosti a pomocí zadané možnosti sloučení. |
LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>) |
Explicitně načte objekt, který souvisí s zadaným objektem zadaným dotazem LINQ a pomocí výchozí možnosti sloučení. |
LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>, MergeOption) |
Explicitně načte objekt, který se vztahuje k zadanému objektu zadaným dotazem LINQ a pomocí zadané možnosti sloučení. |
Refresh(RefreshMode, IEnumerable) |
Aktualizace kolekci objektů v kontextu objektu s daty z databáze. |
Refresh(RefreshMode, Object) |
Aktualizace objektu v kontextu objektu s daty z databáze. |
RefreshAsync(RefreshMode, IEnumerable) |
Asynchronně aktualizuje kolekci objektů v kontextu objektu daty z databáze. |
RefreshAsync(RefreshMode, IEnumerable, CancellationToken) |
Asynchronně aktualizuje kolekci objektů v kontextu objektu daty z databáze. |
RefreshAsync(RefreshMode, Object) |
Asynchronně aktualizuje objekt v kontextu objektu daty z databáze. |
RefreshAsync(RefreshMode, Object, CancellationToken) |
Asynchronně aktualizuje objekt v kontextu objektu daty z databáze. |
SaveChanges() |
Zachová všechny aktualizace databáze a resetuje sledování změn v kontextu objektu. |
SaveChanges(Boolean) |
Zastaralé.
Zachová všechny aktualizace databáze a volitelně resetuje sledování změn v kontextu objektu. |
SaveChanges(SaveOptions) |
Zachová všechny aktualizace databáze a volitelně resetuje sledování změn v kontextu objektu. |
SaveChangesAsync() |
Asynchronně zachová všechny aktualizace databáze a resetuje sledování změn v kontextu objektu. |
SaveChangesAsync(CancellationToken) |
Asynchronně zachová všechny aktualizace databáze a resetuje sledování změn v kontextu objektu. |
SaveChangesAsync(SaveOptions) |
Asynchronně zachová všechny aktualizace databáze a volitelně resetuje sledování změn v kontextu objektu. |
SaveChangesAsync(SaveOptions, CancellationToken) |
Asynchronně zachová všechny aktualizace databáze a volitelně resetuje sledování změn v kontextu objektu. |
Translate<TElement>(DbDataReader) |
Přeloží DbDataReader objekt obsahující řádky dat entity na objekty požadovaného typu entity. |
Translate<TEntity>(DbDataReader, String, MergeOption) |
Přeloží DbDataReader objekt obsahující řá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
ObjectMaterialized |
Nastane při vytvoření nového objektu entity z dat ve zdroji dat v rámci operace dotazu nebo načtení. |
SavingChanges |
Nastane při uložení změn ve zdroji dat. |
Explicitní implementace rozhraní
IObjectContextAdapter.ObjectContext |
Vrátí sám sebe. ObjectContext implementuje IObjectContextAdapter , aby poskytoval společné rozhraní pro DbContext a ObjectContext, které oba vrátí podklad ObjectContext. |
Platí pro
Entity Framework