RelationalQueryableExtensions.FromSql Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
FromSql<TEntity>(DbSet<TEntity>, FormattableString) |
Cria uma consulta LINQ com base em uma cadeia de caracteres interpolada que representa uma consulta SQL. |
FromSql<TEntity>(IQueryable<TEntity>, FormattableString) |
Obsoleto.
Cria uma consulta LINQ com base em uma cadeia de caracteres interpolada que representa uma consulta SQL.
Se o provedor de banco de dados der suporte à composição no SQL fornecido, você poderá compor sobre a consulta SQL bruta usando operadores LINQ –
Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada de usuário para proteger contra um ataque de injeção de SQL. Você pode incluir titulares de parâmetro interpolados na cadeia de caracteres de consulta SQL. Todos os valores de parâmetro interpolados fornecidos serão convertidos automaticamente em um DbParameter – |
FromSql<TEntity>(IQueryable<TEntity>, RawSqlString, Object[]) |
Obsoleto.
Cria uma consulta LINQ com base em uma consulta SQL bruta.
Se o provedor de banco de dados der suporte à composição no SQL fornecido, você poderá compor sobre a consulta SQL bruta usando operadores LINQ –
Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada de usuário para proteger contra um ataque de injeção de SQL. Você pode incluir detentores de parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter –
Essa sobrecarga também aceita instâncias DbParameter como valores de parâmetro. Isso permite que você use parâmetros nomeados na cadeia de caracteres de consulta SQL – |
FromSql<TEntity>(IQueryable<TEntity>, String, Object[]) |
Cria uma consulta LINQ com base em uma consulta SQL bruta.
Se o provedor de banco de dados der suporte à composição no SQL fornecido, você poderá compor sobre a consulta SQL bruta usando operadores LINQ –
Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada de usuário para proteger contra um ataque de injeção de SQL. Você pode incluir detentores de parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter –
Você também pode construir um DbParameter e fornecê-lo como um valor de parâmetro. Isso permite que você use parâmetros nomeados na cadeia de caracteres de consulta SQL – |
FromSql<TEntity>(DbSet<TEntity>, FormattableString)
Cria uma consulta LINQ com base em uma cadeia de caracteres interpolada que representa uma consulta SQL.
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this Microsoft.EntityFrameworkCore.DbSet<TEntity> source, FormattableString sql) where TEntity : class;
static member FromSql : Microsoft.EntityFrameworkCore.DbSet<'Entity (requires 'Entity : null)> * FormattableString -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As DbSet(Of TEntity), sql As FormattableString) As IQueryable(Of TEntity)
Parâmetros de tipo
- TEntity
O tipo dos elementos de source
.
Parâmetros
- source
- DbSet<TEntity>
Um IQueryable<T> a ser usado como a base da consulta SQL da cadeia de caracteres interpolada (normalmente um DbSet<TEntity>).
A cadeia de caracteres interpolada que representa uma consulta SQL com parâmetros.
Retornos
Um IQueryable<T> que representa a consulta SQL de cadeia de caracteres interpolada.
Comentários
Se o provedor de banco de dados der suporte à composição no SQL fornecido, você poderá compor sobre a consulta SQL bruta usando operadores LINQ.
Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada de usuário para proteger contra um ataque de injeção de SQL. Você pode incluir titulares de parâmetro interpolados na cadeia de caracteres de consulta SQL. Todos os valores de parâmetro interpolados fornecidos serão convertidos automaticamente em um DbParameter.
Consulte Executando comandos SQL brutos com o EF Core para obter mais informações e exemplos.
Aplica-se a
FromSql<TEntity>(IQueryable<TEntity>, FormattableString)
Cuidado
For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.
Cria uma consulta LINQ com base em uma cadeia de caracteres interpolada que representa uma consulta SQL.
Se o provedor de banco de dados der suporte à composição no SQL fornecido, você poderá compor sobre a consulta SQL bruta usando operadores LINQ – context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)
.
Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada de usuário para proteger contra um ataque de injeção de SQL. Você pode incluir titulares de parâmetro interpolados na cadeia de caracteres de consulta SQL. Todos os valores de parâmetro interpolados fornecidos serão convertidos automaticamente em um DbParameter – context.Blogs.FromSql($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})")
.
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, FormattableString sql) where TEntity : class;
[System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)]
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, FormattableString sql) where TEntity : class;
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * FormattableString -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
[<System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)>]
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * FormattableString -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As IQueryable(Of TEntity), sql As FormattableString) As IQueryable(Of TEntity)
Parâmetros de tipo
- TEntity
O tipo dos elementos de source
.
Parâmetros
- source
- IQueryable<TEntity>
Um IQueryable<T> a ser usado como a base da consulta SQL da cadeia de caracteres interpolada (normalmente um DbSet<TEntity>).
A cadeia de caracteres interpolada que representa uma consulta SQL.
Retornos
Um IQueryable<T> que representa a consulta SQL de cadeia de caracteres interpolada.
- Atributos
Aplica-se a
FromSql<TEntity>(IQueryable<TEntity>, RawSqlString, Object[])
Cuidado
For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.
Cria uma consulta LINQ com base em uma consulta SQL bruta.
Se o provedor de banco de dados der suporte à composição no SQL fornecido, você poderá compor sobre a consulta SQL bruta usando operadores LINQ – context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)
.
Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada de usuário para proteger contra um ataque de injeção de SQL. Você pode incluir detentores de parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter – context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)
.
Essa sobrecarga também aceita instâncias DbParameter como valores de parâmetro. Isso permite que você use parâmetros nomeados na cadeia de caracteres de consulta SQL – context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, Microsoft.EntityFrameworkCore.RawSqlString sql, params object[] parameters) where TEntity : class;
[System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)]
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, Microsoft.EntityFrameworkCore.RawSqlString sql, params object[] parameters) where TEntity : class;
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * Microsoft.EntityFrameworkCore.RawSqlString * obj[] -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
[<System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)>]
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * Microsoft.EntityFrameworkCore.RawSqlString * obj[] -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As IQueryable(Of TEntity), sql As RawSqlString, ParamArray parameters As Object()) As IQueryable(Of TEntity)
Parâmetros de tipo
- TEntity
O tipo dos elementos de source
.
Parâmetros
- source
- IQueryable<TEntity>
Um IQueryable<T> a ser usado como a base da consulta SQL bruta (normalmente um DbSet<TEntity>).
- sql
- RawSqlString
A consulta SQL bruta. NB. Um literal de cadeia de caracteres pode ser passado aqui porque RawSqlString é implicitamente conversível para cadeia de caracteres.
- parameters
- Object[]
Os valores a serem atribuídos aos parâmetros.
Retornos
Um IQueryable<T> que representa a consulta SQL bruta.
- Atributos
Aplica-se a
FromSql<TEntity>(IQueryable<TEntity>, String, Object[])
Cria uma consulta LINQ com base em uma consulta SQL bruta.
Se o provedor de banco de dados der suporte à composição no SQL fornecido, você poderá compor sobre a consulta SQL bruta usando operadores LINQ – context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)
.
Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada de usuário para proteger contra um ataque de injeção de SQL. Você pode incluir detentores de parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter – context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)
.
Você também pode construir um DbParameter e fornecê-lo como um valor de parâmetro. Isso permite que você use parâmetros nomeados na cadeia de caracteres de consulta SQL – context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, string sql, params object[] parameters) where TEntity : class;
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * string * obj[] -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As IQueryable(Of TEntity), sql As String, ParamArray parameters As Object()) As IQueryable(Of TEntity)
Parâmetros de tipo
- TEntity
O tipo dos elementos de source
.
Parâmetros
- source
- IQueryable<TEntity>
Um IQueryable<T> a ser usado como a base da consulta SQL bruta (normalmente um DbSet<TEntity>).
- sql
- String
A consulta SQL bruta.
- parameters
- Object[]
Os valores a serem atribuídos aos parâmetros.
Retornos
Um IQueryable<T> que representa a consulta SQL bruta.
Aplica-se a
Entity Framework