Поделиться через


RelationalDatabaseFacadeExtensions Класс

Определение

Методы расширения для объекта , возвращаемого DatabaseFacade из Database , могут использоваться только с поставщиками реляционных баз данных.

public static class RelationalDatabaseFacadeExtensions
type RelationalDatabaseFacadeExtensions = class
Public Module RelationalDatabaseFacadeExtensions
Наследование
RelationalDatabaseFacadeExtensions

Методы

BeginTransaction(DatabaseFacade, IsolationLevel)

Запускает новую транзакцию с заданным IsolationLevel.

BeginTransactionAsync(DatabaseFacade, IsolationLevel, CancellationToken)

Асинхронно запускает новую транзакцию с заданным IsolationLevel.

CloseConnection(DatabaseFacade)

Закрывает базовый DbConnectionобъект .

CloseConnectionAsync(DatabaseFacade)

Закрывает базовый DbConnectionобъект .

ExecuteSql(DatabaseFacade, FormattableString)

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

ExecuteSqlAsync(DatabaseFacade, FormattableString, CancellationToken)

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

ExecuteSqlCommand(DatabaseFacade, FormattableString)
Устаревшие..

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

Обратите внимание, что этот метод не запускает транзакцию. Чтобы использовать этот метод с транзакцией, сначала вызовите BeginTransaction(DatabaseFacade, IsolationLevel) или UseTransaction(DatabaseFacade, DbTransaction).

Обратите внимание, что текущий ExecutionStrategy объект не используется этим методом, так как SQL может не быть идемпотентным и не выполняется в транзакции. ExecutionStrategy можно использовать явным образом, убедившись, что также используется транзакция, если SQL не является идемпотентным.

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все значения параметров, которые вы указываете, будут автоматически преобразованы в DbParameter — context.Database.ExecuteSqlCommand($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})").

ExecuteSqlCommand(DatabaseFacade, RawSqlString, IEnumerable<Object>)
Устаревшие..

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

Обратите внимание, что этот метод не запускает транзакцию. Чтобы использовать этот метод с транзакцией, сначала вызовите BeginTransaction(DatabaseFacade, IsolationLevel) или UseTransaction(DatabaseFacade, DbTransaction).

Обратите внимание, что текущий ExecutionStrategy объект не используется этим методом, так как SQL может не быть идемпотентным и не выполняется в транзакции. ExecutionStrategy можно использовать явным образом, убедившись, что также используется транзакция, если SQL не является идемпотентным.

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все значения параметров, которые вы указали, будут автоматически преобразованы в DbParameter. Вы также можете использовать ExecuteSqlInterpolated для использования синтаксиса интерполированной строки для создания параметров.

ExecuteSqlCommand(DatabaseFacade, RawSqlString, Object[])
Устаревшие..

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

Обратите внимание, что этот метод не запускает транзакцию. Чтобы использовать этот метод с транзакцией, сначала вызовите BeginTransaction(DatabaseFacade, IsolationLevel) или UseTransaction(DatabaseFacade, DbTransaction).

Обратите внимание, что текущий ExecutionStrategy объект не используется этим методом, так как SQL может не быть идемпотентным и не выполняется в транзакции. ExecutionStrategy можно использовать явным образом, убедившись, что также используется транзакция, если SQL не является идемпотентным.

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все значения параметров, которые вы указываете, будут автоматически преобразованы в DbParameter — context.Database.ExecuteSqlCommand("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm). Вы также можете использовать ExecuteSqlInterpolated для использования синтаксиса интерполированной строки для создания параметров.

ExecuteSqlCommand(DatabaseFacade, String, Object[])

Методы расширения для объекта , возвращаемого DatabaseFacade из Database , могут использоваться только с поставщиками реляционных баз данных.

ExecuteSqlCommandAsync(DatabaseFacade, FormattableString, CancellationToken)
Устаревшие..

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

Обратите внимание, что этот метод не запускает транзакцию. Чтобы использовать этот метод с транзакцией, сначала вызовите BeginTransaction(DatabaseFacade, IsolationLevel) или UseTransaction(DatabaseFacade, DbTransaction).

Обратите внимание, что текущий ExecutionStrategy объект не используется этим методом, так как SQL может не быть идемпотентным и не выполняется в транзакции. ExecutionStrategy можно использовать явным образом, убедившись, что также используется транзакция, если SQL не является идемпотентным.

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все значения параметров, которые вы указываете, будут автоматически преобразованы в DbParameter — context.Database.ExecuteSqlCommandAsync($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})").

ExecuteSqlCommandAsync(DatabaseFacade, RawSqlString, CancellationToken)
Устаревшие..

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

Обратите внимание, что этот метод не запускает транзакцию. Чтобы использовать этот метод с транзакцией, сначала вызовите BeginTransaction(DatabaseFacade, IsolationLevel) или UseTransaction(DatabaseFacade, DbTransaction).

Обратите внимание, что текущий ExecutionStrategy объект не используется этим методом, так как SQL может не быть идемпотентным и не выполняется в транзакции. ExecutionStrategy можно использовать явным образом, убедившись, что также используется транзакция, если SQL не является идемпотентным.

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все значения параметров, которые вы указываете, будут автоматически преобразованы в DbParameter — context.Database.ExecuteSqlCommandAsync("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm).

ExecuteSqlCommandAsync(DatabaseFacade, RawSqlString, IEnumerable<Object>, CancellationToken)
Устаревшие..

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

Обратите внимание, что этот метод не запускает транзакцию. Чтобы использовать этот метод с транзакцией, сначала вызовите BeginTransaction(DatabaseFacade, IsolationLevel) или UseTransaction(DatabaseFacade, DbTransaction).

Обратите внимание, что текущий ExecutionStrategy объект не используется этим методом, так как SQL может не быть идемпотентным и не выполняется в транзакции. ExecutionStrategy можно использовать явным образом, убедившись, что также используется транзакция, если SQL не является идемпотентным.

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все значения параметров, которые вы указали, будут автоматически преобразованы в DbParameter. Вы также можете использовать ExecuteSqlInterpolated для использования синтаксиса интерполированной строки для создания параметров.

ExecuteSqlCommandAsync(DatabaseFacade, RawSqlString, Object[])
Устаревшие..

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

Обратите внимание, что этот метод не запускает транзакцию. Чтобы использовать этот метод с транзакцией, сначала вызовите BeginTransaction(DatabaseFacade, IsolationLevel) или UseTransaction(DatabaseFacade, DbTransaction).

Обратите внимание, что текущий ExecutionStrategy объект не используется этим методом, так как SQL может не быть идемпотентным и не выполняется в транзакции. ExecutionStrategy можно использовать явным образом, убедившись, что также используется транзакция, если SQL не является идемпотентным.

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все значения параметров, которые вы указываете, будут автоматически преобразованы в DbParameter — context.Database.ExecuteSqlCommandAsync("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm). Вы также можете использовать ExecuteSqlInterpolated для использования синтаксиса интерполированной строки для создания параметров.

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

Методы расширения для объекта , возвращаемого DatabaseFacade из Database , могут использоваться только с поставщиками реляционных баз данных.

ExecuteSqlInterpolated(DatabaseFacade, FormattableString)

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

ExecuteSqlInterpolatedAsync(DatabaseFacade, FormattableString, CancellationToken)

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

ExecuteSqlRaw(DatabaseFacade, String, IEnumerable<Object>)

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

ExecuteSqlRaw(DatabaseFacade, String, Object[])

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

ExecuteSqlRawAsync(DatabaseFacade, String, CancellationToken)

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

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

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

ExecuteSqlRawAsync(DatabaseFacade, String, Object[])

Выполняет заданный SQL для базы данных и возвращает количество затронутых строк.

GenerateCreateScript(DatabaseFacade)

Создает скрипт для создания всех таблиц для текущей модели.

GetAppliedMigrations(DatabaseFacade)

Возвращает все миграции, примененные к целевой базе данных.

GetAppliedMigrationsAsync(DatabaseFacade, CancellationToken)

Асинхронно получает все миграции, примененные к целевой базе данных.

GetCommandTimeout(DatabaseFacade)

Возвращает время ожидания (в секундах) для команд, выполняемых с помощью этого DbContext.

GetConnectionString(DatabaseFacade)

Возвращает базовый строка подключения, настроенный для данного DbContextобъекта .

GetDbConnection(DatabaseFacade)

Возвращает базовый ADO.NET DbConnection для данного DbContextобъекта .

GetMigrations(DatabaseFacade)

Возвращает все миграции, определенные в настроенной сборке миграций.

GetPendingMigrations(DatabaseFacade)

Возвращает все миграции, определенные в сборке, но не примененные к целевой базе данных.

GetPendingMigrationsAsync(DatabaseFacade, CancellationToken)

Асинхронно получает все миграции, определенные в сборке, но не примененные к целевой базе данных.

HasPendingModelChanges(DatabaseFacade)

Возвращает значение true , если модель имеет ожидающие применения изменения.

IsRelational(DatabaseFacade)

Возвращает значение true , если используемый поставщик базы данных является реляционной базой данных.

Migrate(DatabaseFacade)

Применяет все ожидающие миграции для контекста к базе данных. Создаст базу данных, если она еще не существует.

MigrateAsync(DatabaseFacade, CancellationToken)

Асинхронно применяет все ожидающие миграции для контекста к базе данных. Создаст базу данных, если она еще не существует.

OpenConnection(DatabaseFacade)

Открывает базовый DbConnectionобъект .

OpenConnectionAsync(DatabaseFacade, CancellationToken)

Открывает базовый DbConnectionобъект .

SetCommandTimeout(DatabaseFacade, Nullable<Int32>)

Задает время ожидания (в секундах), используемое для команд, выполняемых с помощью этого DbContext.

SetCommandTimeout(DatabaseFacade, TimeSpan)

Задает время ожидания, используемое для команд, выполняемых с помощью этого DbContext.

SetConnectionString(DatabaseFacade, String)

Задает базовый строка подключения, настроенный для этого DbContext.

SetDbConnection(DatabaseFacade, DbConnection, Boolean)

Задает базовый ADO.NET DbConnection для этого DbContextобъекта .

SetDbConnection(DatabaseFacade, DbConnection)

Задает базовый ADO.NET DbConnection для этого DbContextобъекта .

SqlQuery<TResult>(DatabaseFacade, FormattableString)

Создает запрос LINQ на основе необработанного SQL-запроса, который возвращает результирующий набор скалярного типа, который изначально поддерживается поставщиком базы данных.

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

Создает запрос LINQ на основе необработанного SQL-запроса, который возвращает результирующий набор скалярного типа, который изначально поддерживается поставщиком базы данных.

UseTransaction(DatabaseFacade, DbTransaction, Guid)

Задает для DbTransaction использования операциями базы данных в DbContext.

UseTransaction(DatabaseFacade, DbTransaction)

Задает для DbTransaction использования операциями базы данных в DbContext.

UseTransactionAsync(DatabaseFacade, DbTransaction, CancellationToken)

Задает для DbTransaction использования операциями базы данных в DbContext.

UseTransactionAsync(DatabaseFacade, DbTransaction, Guid, CancellationToken)

Задает для DbTransaction использования операциями базы данных в DbContext.

Применяется к