Condividi tramite


RelationalQueryableExtensions.FromSql Metodo

Definizione

Overload

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

Crea una query LINQ basata su una stringa interpolata che rappresenta una query SQL.

FromSql<TEntity>(IQueryable<TEntity>, FormattableString)
Obsoleti.

Crea una query LINQ basata su una stringa interpolata che rappresenta una query SQL.

Se il provider di database supporta la composizione nell'istanza di SQL fornita, è possibile comporre sopra la query SQL non elaborata usando gli operatori LINQ - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri interpolati nella stringa di query SQL. Tutti i valori dei parametri interpolati specificati verranno convertiti automaticamente in dbParameter - context.Blogs.FromSql($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})").

FromSql<TEntity>(IQueryable<TEntity>, RawSqlString, Object[])
Obsoleti.

Crea una query LINQ basata su una query SQL non elaborata.

Se il provider di database supporta la composizione nell'istanza di SQL fornita, è possibile comporre sopra la query SQL non elaborata usando gli operatori LINQ - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri nella stringa di query SQL e quindi specificare i valori dei parametri come argomenti aggiuntivi. Tutti i valori dei parametri specificati verranno convertiti automaticamente in dbParameter - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm).

Questo overload accetta anche le istanze DbParameter come valori di parametro. In questo modo è possibile usare parametri denominati nella stringa di query SQL : context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

FromSql<TEntity>(IQueryable<TEntity>, String, Object[])

Crea una query LINQ basata su una query SQL non elaborata.

Se il provider di database supporta la composizione nell'istanza di SQL fornita, è possibile comporre sopra la query SQL non elaborata usando gli operatori LINQ - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri nella stringa di query SQL e quindi specificare i valori dei parametri come argomenti aggiuntivi. Tutti i valori dei parametri specificati verranno convertiti automaticamente in dbParameter - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm).

È anche possibile costruire un oggetto DbParameter e specificarlo a come valore di parametro. In questo modo è possibile usare parametri denominati nella stringa di query SQL : context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

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

Crea una query LINQ basata su una stringa interpolata che rappresenta una query 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)

Parametri di tipo

TEntity

Tipo degli elementi di source.

Parametri

source
DbSet<TEntity>

Oggetto IQueryable<T> da usare come base della query SQL di stringa interpolata (in genere un oggetto DbSet<TEntity>).

sql
FormattableString

Stringa interpolata che rappresenta una query SQL con parametri.

Restituisce

IQueryable<TEntity>

Oggetto IQueryable<T> che rappresenta la query SQL di stringa interpolata.

Commenti

Se il provider di database supporta la composizione nell'istanza di SQL fornita, è possibile comporre sopra la query SQL non elaborata usando gli operatori LINQ.

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri interpolati nella stringa di query SQL. Tutti i valori dei parametri interpolati forniti verranno convertiti automaticamente in un oggetto DbParameter.

Per altre informazioni ed esempi, vedere Esecuzione di comandi SQL non elaborati con EF Core .

Si applica a

FromSql<TEntity>(IQueryable<TEntity>, FormattableString)

Attenzione

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.

Crea una query LINQ basata su una stringa interpolata che rappresenta una query SQL.

Se il provider di database supporta la composizione nell'istanza di SQL fornita, è possibile comporre sopra la query SQL non elaborata usando gli operatori LINQ - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri interpolati nella stringa di query SQL. Tutti i valori dei parametri interpolati specificati verranno convertiti automaticamente in 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)

Parametri di tipo

TEntity

Tipo degli elementi di source.

Parametri

source
IQueryable<TEntity>

Oggetto IQueryable<T> da usare come base della query SQL di stringa interpolata (in genere un oggetto DbSet<TEntity>).

sql
FormattableString

Stringa interpolata che rappresenta una query SQL.

Restituisce

IQueryable<TEntity>

Oggetto IQueryable<T> che rappresenta la query SQL di stringa interpolata.

Attributi

Si applica a

FromSql<TEntity>(IQueryable<TEntity>, RawSqlString, Object[])

Attenzione

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.

Crea una query LINQ basata su una query SQL non elaborata.

Se il provider di database supporta la composizione nell'istanza di SQL fornita, è possibile comporre sopra la query SQL non elaborata usando gli operatori LINQ - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri nella stringa di query SQL e quindi specificare i valori dei parametri come argomenti aggiuntivi. Tutti i valori dei parametri specificati verranno convertiti automaticamente in dbParameter - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm).

Questo overload accetta anche le istanze DbParameter come valori di parametro. In questo modo è possibile usare parametri denominati nella stringa di query 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)

Parametri di tipo

TEntity

Tipo degli elementi di source.

Parametri

source
IQueryable<TEntity>

Oggetto IQueryable<T> da usare come base della query SQL non elaborata (in genere un oggetto DbSet<TEntity>).

sql
RawSqlString

Query SQL non elaborata. NB. Un valore letterale stringa può essere passato qui perché RawSqlString è convertibile in modo implicito in stringa.

parameters
Object[]

Valori da assegnare ai parametri.

Restituisce

IQueryable<TEntity>

Oggetto IQueryable<T> che rappresenta la query SQL non elaborata.

Attributi

Si applica a

FromSql<TEntity>(IQueryable<TEntity>, String, Object[])

Crea una query LINQ basata su una query SQL non elaborata.

Se il provider di database supporta la composizione nell'istanza di SQL fornita, è possibile comporre sopra la query SQL non elaborata usando gli operatori LINQ - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri nella stringa di query SQL e quindi specificare i valori dei parametri come argomenti aggiuntivi. Tutti i valori dei parametri specificati verranno convertiti automaticamente in dbParameter - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm).

È anche possibile costruire un oggetto DbParameter e specificarlo a come valore di parametro. In questo modo è possibile usare parametri denominati nella stringa di query 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)

Parametri di tipo

TEntity

Tipo degli elementi di source.

Parametri

source
IQueryable<TEntity>

Oggetto IQueryable<T> da usare come base della query SQL non elaborata (in genere un oggetto DbSet<TEntity>).

sql
String

Query SQL non elaborata.

parameters
Object[]

Valori da assegnare ai parametri.

Restituisce

IQueryable<TEntity>

Oggetto IQueryable<T> che rappresenta la query SQL non elaborata.

Si applica a