Sdílet prostřednictvím


RelationalDatabaseFacadeExtensions Třída

Definice

Rozšiřující metody pro vrácený DatabaseFacade z Database , které lze použít pouze s poskytovateli relační databáze.

public static class RelationalDatabaseFacadeExtensions
type RelationalDatabaseFacadeExtensions = class
Public Module RelationalDatabaseFacadeExtensions
Dědičnost
RelationalDatabaseFacadeExtensions

Metody

BeginTransaction(DatabaseFacade, IsolationLevel)

Spustí novou transakci s daným IsolationLevel.

BeginTransactionAsync(DatabaseFacade, IsolationLevel, CancellationToken)

Asynchronně spustí novou transakci s daným IsolationLevelobjektem .

CloseConnection(DatabaseFacade)

Zavře základní DbConnectionobjekt .

CloseConnectionAsync(DatabaseFacade)

Zavře základní DbConnectionobjekt .

ExecuteSql(DatabaseFacade, FormattableString)

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlAsync(DatabaseFacade, FormattableString, CancellationToken)

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlCommand(DatabaseFacade, FormattableString)
Zastaralé.

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction(DatabaseFacade, DbTransaction).

Všimněte si, že aktuální ExecutionStrategy není používán touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. ExecutionStrategy lze použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.

Stejně jako u každého rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitelé míst parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter – context.Database.ExecuteSqlCommand($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})").

ExecuteSqlCommand(DatabaseFacade, RawSqlString, IEnumerable<Object>)
Zastaralé.

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction(DatabaseFacade, DbTransaction).

Všimněte si, že aktuální ExecutionStrategy není používán touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. ExecutionStrategy lze použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.

Stejně jako u každého rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitelé míst parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Můžete také zvážit použití executeSqlInterpolated k vytvoření parametrů pomocí syntaxe interpolovaných řetězců.

ExecuteSqlCommand(DatabaseFacade, RawSqlString, Object[])
Zastaralé.

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction(DatabaseFacade, DbTransaction).

Všimněte si, že aktuální ExecutionStrategy není používán touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. ExecutionStrategy lze použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.

Stejně jako u každého rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitelé míst parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter – context.Database.ExecuteSqlCommand("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm). Můžete také zvážit použití executeSqlInterpolated k vytvoření parametrů pomocí syntaxe interpolovaných řetězců.

ExecuteSqlCommand(DatabaseFacade, String, Object[])

Rozšiřující metody pro vrácený DatabaseFacade z Database , které lze použít pouze s poskytovateli relační databáze.

ExecuteSqlCommandAsync(DatabaseFacade, FormattableString, CancellationToken)
Zastaralé.

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction(DatabaseFacade, DbTransaction).

Všimněte si, že aktuální ExecutionStrategy není používán touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. ExecutionStrategy lze použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.

Stejně jako u každého rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitelé míst parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter – context.Database.ExecuteSqlCommandAsync($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})").

ExecuteSqlCommandAsync(DatabaseFacade, RawSqlString, CancellationToken)
Zastaralé.

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction(DatabaseFacade, DbTransaction).

Všimněte si, že aktuální ExecutionStrategy není používán touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. ExecutionStrategy lze použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.

Stejně jako u každého rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitelé míst parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter – context.Database.ExecuteSqlCommandAsync("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm).

ExecuteSqlCommandAsync(DatabaseFacade, RawSqlString, IEnumerable<Object>, CancellationToken)
Zastaralé.

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction(DatabaseFacade, DbTransaction).

Všimněte si, že aktuální ExecutionStrategy není používán touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. ExecutionStrategy lze použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.

Stejně jako u každého rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitelé míst parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter. Můžete také zvážit použití executeSqlInterpolated k vytvoření parametrů pomocí syntaxe interpolovaných řetězců.

ExecuteSqlCommandAsync(DatabaseFacade, RawSqlString, Object[])
Zastaralé.

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction(DatabaseFacade, DbTransaction).

Všimněte si, že aktuální ExecutionStrategy není používán touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. ExecutionStrategy lze použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.

Stejně jako u každého rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitelé míst parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter – context.Database.ExecuteSqlCommandAsync("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm). Můžete také zvážit použití executeSqlInterpolated k vytvoření parametrů pomocí syntaxe interpolovaných řetězců.

ExecuteSqlCommandAsync(DatabaseFacade, String, CancellationToken, Object[])

Rozšiřující metody pro vrácený DatabaseFacade z Database , které lze použít pouze s poskytovateli relační databáze.

ExecuteSqlInterpolated(DatabaseFacade, FormattableString)

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlInterpolatedAsync(DatabaseFacade, FormattableString, CancellationToken)

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlRaw(DatabaseFacade, String, IEnumerable<Object>)

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlRaw(DatabaseFacade, String, Object[])

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlRawAsync(DatabaseFacade, String, CancellationToken)

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlRawAsync(DatabaseFacade, String, IEnumerable<Object>, CancellationToken)

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

ExecuteSqlRawAsync(DatabaseFacade, String, Object[])

Spustí daný jazyk SQL proti databázi a vrátí počet ovlivněných řádků.

GenerateCreateScript(DatabaseFacade)

Vygeneruje skript pro vytvoření všech tabulek pro aktuální model.

GetAppliedMigrations(DatabaseFacade)

Získá všechny migrace, které byly použity na cílovou databázi.

GetAppliedMigrationsAsync(DatabaseFacade, CancellationToken)

Asynchronně získá všechny migrace, které byly použity na cílovou databázi.

GetCommandTimeout(DatabaseFacade)

Vrátí časový limit (v sekundách) nastavený pro příkazy spuštěné pomocí tohoto DbContextpříkazu .

GetConnectionString(DatabaseFacade)

Získá podkladovou připojovací řetězec nakonfigurovanou pro tento DbContextobjekt .

GetDbConnection(DatabaseFacade)

Získá základní ADO.NET DbConnection pro tento DbContextobjekt .

GetMigrations(DatabaseFacade)

Získá všechny migrace, které jsou definovány v sestavení nakonfigurované migrace.

GetPendingMigrations(DatabaseFacade)

Získá všechny migrace, které jsou definovány v sestavení, ale nebyly použity na cílovou databázi.

GetPendingMigrationsAsync(DatabaseFacade, CancellationToken)

Asynchronně získá všechny migrace, které jsou definovány v sestavení, ale nebyly použity na cílovou databázi.

HasPendingModelChanges(DatabaseFacade)

Vrátí hodnotu true , pokud má model čekající změny, které se mají použít.

IsRelational(DatabaseFacade)

Vrátí hodnotu true , pokud se poskytovatel databáze aktuálně používá jako relační databáze.

Migrate(DatabaseFacade)

Použije všechny čekající migrace pro kontext do databáze. Vytvoří databázi, pokud ještě neexistuje.

MigrateAsync(DatabaseFacade, CancellationToken)

Asynchronně použije všechny čekající migrace pro kontext na databázi. Vytvoří databázi, pokud ještě neexistuje.

OpenConnection(DatabaseFacade)

Otevře základní DbConnectionobjekt .

OpenConnectionAsync(DatabaseFacade, CancellationToken)

Otevře základní DbConnectionobjekt .

SetCommandTimeout(DatabaseFacade, Nullable<Int32>)

Nastaví časový limit (v sekundách), který se má použít pro příkazy spouštěné s tímto DbContextpříkazem .

SetCommandTimeout(DatabaseFacade, TimeSpan)

Nastaví časový limit pro příkazy spuštěné s tímto DbContextpříkazem .

SetConnectionString(DatabaseFacade, String)

Nastaví základní připojovací řetězec nakonfigurované pro tento DbContextobjekt .

SetDbConnection(DatabaseFacade, DbConnection)

Nastaví základní ADO.NET DbConnection pro tento DbContextobjekt .

SetDbConnection(DatabaseFacade, DbConnection, Boolean)

Nastaví základní ADO.NET DbConnection pro tento DbContextobjekt .

SqlQuery<TResult>(DatabaseFacade, FormattableString)

Vytvoří dotaz LINQ na základě nezpracovaného dotazu SQL, který vrátí sadu výsledků skalárního typu nativně podporovaného poskytovatelem databáze.

SqlQueryRaw<TResult>(DatabaseFacade, String, Object[])

Vytvoří dotaz LINQ na základě nezpracovaného dotazu SQL, který vrátí sadu výsledků skalárního typu nativně podporovaného poskytovatelem databáze.

UseTransaction(DatabaseFacade, DbTransaction)

Nastaví pro DbTransaction použití databázovými operacemi na .DbContext

UseTransaction(DatabaseFacade, DbTransaction, Guid)

Nastaví, DbTransaction aby se používaly databázové operace na DbContext.

UseTransactionAsync(DatabaseFacade, DbTransaction, CancellationToken)

Nastaví, DbTransaction aby se používaly databázové operace na DbContext.

UseTransactionAsync(DatabaseFacade, DbTransaction, Guid, CancellationToken)

Nastaví, DbTransaction aby se používaly databázové operace na DbContext.

Platí pro