Partilhar via


RelationalQueryableExtensions Classe

Definição

Métodos de extensão específicos do banco de dados relacional para consultas LINQ.

public static class RelationalQueryableExtensions
type RelationalQueryableExtensions = class
Public Module RelationalQueryableExtensions
Herança
RelationalQueryableExtensions

Métodos

AsSingleQuery<TEntity>(IQueryable<TEntity>)

Retorna uma nova consulta configurada para carregar as coleções na consulta resulta em uma única consulta de banco de dados.

AsSplitQuery<TEntity>(IQueryable<TEntity>)

Retorna uma nova consulta configurada para carregar as coleções nos resultados da consulta por meio de consultas de banco de dados separadas.

CreateDbCommand(IQueryable)

Cria uma configuração DbCommand para executar essa consulta.

ExecuteDelete<TSource>(IQueryable<TSource>)

Exclui todas as linhas de banco de dados para as instâncias de entidade que correspondem à consulta LINQ do banco de dados.

ExecuteDeleteAsync<TSource>(IQueryable<TSource>, CancellationToken)

Exclui as linhas de banco de dados de forma assíncrona para as instâncias de entidade que correspondem à consulta LINQ do banco de dados.

ExecuteUpdate<TSource>(IQueryable<TSource>, Expression<Func<SetPropertyCalls<TSource>,SetPropertyCalls<TSource>>>)

Atualizações todas as linhas de banco de dados para as instâncias de entidade que correspondem à consulta LINQ do banco de dados.

ExecuteUpdateAsync<TSource>(IQueryable<TSource>, Expression<Func<SetPropertyCalls<TSource>,SetPropertyCalls<TSource>>>, CancellationToken)

Atualiza as linhas de banco de dados de forma assíncrona para as instâncias de entidade que correspondem à consulta LINQ do banco de dados.

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 – 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})").

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 – 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))

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))

FromSqlInterpolated<TEntity>(DbSet<TEntity>, FormattableString)

Cria uma consulta LINQ com base em uma cadeia de caracteres interpolada que representa uma consulta SQL.

FromSqlRaw<TEntity>(DbSet<TEntity>, String, Object[])

Cria uma consulta LINQ com base em uma consulta SQL bruta.

Aplica-se a