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


RelationalDatabaseFacadeExtensions.ExecuteSqlInterpolated Метод

Определение

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

public static int ExecuteSqlInterpolated (this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, FormattableString sql);
static member ExecuteSqlInterpolated : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * FormattableString -> int
<Extension()>
Public Function ExecuteSqlInterpolated (databaseFacade As DatabaseFacade, sql As FormattableString) As Integer

Параметры

databaseFacade
DatabaseFacade

Для DatabaseFacade контекста.

sql
FormattableString

Интерполированная строка, представляющая SQL-запрос с параметрами.

Возвращаемое значение

Число обработанных строк.

Комментарии

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

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

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

Дополнительные сведения и примеры см. в статье Выполнение необработанных команд SQL с помощью EF Core .

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