DbSet<TEntity>.SqlQuery(String, Object[]) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает необработанный SQL-запрос, возвращающий сущности в данном наборе. По умолчанию возвращаемые сущности отслеживаются контекстом; это можно изменить, вызвав AsNoTracking для возвращаемого DbSqlQuery<TEntity> объекта . Обратите внимание, что возвращаемые сущности всегда относятся к типу для этого набора и никогда не имеют производного типа. Если запрашиваемая таблица или таблицы могут содержать данные других типов сущностей, SQL-запрос должен быть написан соответствующим образом, обеспечивая возврат только сущностей нужного типа.
Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. Вы можете включить заполнители параметров в строку ЗАПРОСА SQL, а затем указать значения параметров в качестве дополнительных аргументов. Все указанные значения параметров будут автоматически преобразованы в DbParameter. Контексте. Blogs.SqlQuery("SELECT * FROM dbo. Записи WHERE Author = @p0", userSuppliedAuthor); Кроме того, можно создать DbParameter и передать его в SqlQuery. Это позволяет использовать именованные параметры в строке SQL-запроса. Контексте. Blogs.SqlQuery("SELECT * FROM dbo. Записи WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
public virtual System.Data.Entity.Infrastructure.DbSqlQuery<TEntity> SqlQuery (string sql, params object[] parameters);
abstract member SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery<'Entity (requires 'Entity : null)>
override this.SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery<'Entity (requires 'Entity : null)>
Public Overridable Function SqlQuery (sql As String, ParamArray parameters As Object()) As DbSqlQuery(Of TEntity)
Параметры
- sql
- String
Строка SQL-запроса.
- parameters
- Object[]
Параметры, подставляемые в строку SQL-запроса. Если используются выходные параметры, их значения будут недоступны, пока результаты не будут полностью прочитаны. Это связано с базовым поведением DbDataReader, см http://go.microsoft.com/fwlink/?LinkID=398589 . дополнительные сведения.
Возвращаемое значение
Объект DbSqlQuery<TEntity> , который будет выполнять запрос при его перечислении.
Применяется к
Entity Framework