Sprache

RelationalQueryableExtensions.FromSql Methode

Definition

Überlädt

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

Erstellt eine LINQ-Abfrage basierend auf einer interpolierten Zeichenfolge, die eine SQL-Abfrage darstellt.

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

Erstellt eine LINQ-Abfrage basierend auf einer interpolierten Zeichenfolge, die eine SQL-Abfrage darstellt.

Wenn der Datenbankanbieter das Verfassen in der bereitgestellten SQL-Datei unterstützt, können Sie mithilfe von LINQ-Operatoren context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)über die rohe SQL-Abfrage verfassen .

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, jede Benutzereingabe zu parametrisieren, um vor einem SQL-Einfügungsangriff zu schützen. Sie können interpolierte Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen. Alle interpolierten Parameterwerte, die Sie bereitstellen, werden automatisch in einen DbParameter - context.Blogs.FromSql($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})")konvertiert.

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

Erstellt eine LINQ-Abfrage basierend auf einer unformatierten SQL-Abfrage.

Wenn der Datenbankanbieter das Verfassen in der bereitgestellten SQL-Datei unterstützt, können Sie mithilfe von LINQ-Operatoren context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)über die rohe SQL-Abfrage verfassen .

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, jede Benutzereingabe zu parametrisieren, um vor einem SQL-Einfügungsangriff zu schützen. Sie können Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen und dann Parameterwerte als zusätzliche Argumente angeben. Alle parameterwerte, die Sie angeben, werden automatisch in einen DbParameter context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)- konvertiert.

Diese Überladung akzeptiert auch DbParameter-Instanzen als Parameterwerte. Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden – context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

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

Erstellt eine LINQ-Abfrage basierend auf einer unformatierten SQL-Abfrage.

Wenn der Datenbankanbieter das Verfassen in der bereitgestellten SQL-Datei unterstützt, können Sie mithilfe von LINQ-Operatoren context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)über die rohe SQL-Abfrage verfassen .

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, jede Benutzereingabe zu parametrisieren, um vor einem SQL-Einfügungsangriff zu schützen. Sie können Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen und dann Parameterwerte als zusätzliche Argumente angeben. Alle parameterwerte, die Sie angeben, werden automatisch in einen DbParameter context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)- konvertiert.

Sie können auch einen DbParameter erstellen und als Parameterwert angeben. Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden – context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

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

Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs

Erstellt eine LINQ-Abfrage basierend auf einer interpolierten Zeichenfolge, die eine SQL-Abfrage darstellt.

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)

Typparameter

TEntity

Der Typ der Elemente von source.

Parameter

source
DbSet<TEntity>

Eine IQueryable<T> , die als Basis der interpolierten Zeichenfolgen-SQL-Abfrage verwendet werden soll (in der Regel ein DbSet<TEntity>).

sql
FormattableString

Die interpolierte Zeichenfolge, die eine SQL-Abfrage mit Parametern darstellt.

Gibt zurück

IQueryable<TEntity>

Eine IQueryable<T> Darstellung der interpolierten Zeichenfolgen-SQL-Abfrage.

Hinweise

Wenn der Datenbankanbieter das Verfassen in der bereitgestellten SQL-Datei unterstützt, können Sie mithilfe von LINQ-Operatoren über die rohe SQL-Abfrage verfassen.

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, jede Benutzereingabe zu parametrisieren, um vor einem SQL-Einfügungsangriff zu schützen. Sie können interpolierte Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen. Alle interpolierten Parameterwerte, die Sie angeben, werden automatisch in ein DbParameter.

Weitere Informationen und Beispiele finden Sie unter Ausführen von unformatierten SQL-Befehlen mit EF Core .

Gilt für:

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

Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs

Achtung

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.

Erstellt eine LINQ-Abfrage basierend auf einer interpolierten Zeichenfolge, die eine SQL-Abfrage darstellt.

Wenn der Datenbankanbieter das Verfassen in der bereitgestellten SQL-Datei unterstützt, können Sie mithilfe von LINQ-Operatoren context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)über die rohe SQL-Abfrage verfassen .

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, jede Benutzereingabe zu parametrisieren, um vor einem SQL-Einfügungsangriff zu schützen. Sie können interpolierte Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen. Alle interpolierten Parameterwerte, die Sie bereitstellen, werden automatisch in einen DbParameter - context.Blogs.FromSql($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})")konvertiert.

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)

Typparameter

TEntity

Der Typ der Elemente von source.

Parameter

source
IQueryable<TEntity>

Eine IQueryable<T> , die als Basis der interpolierten Zeichenfolgen-SQL-Abfrage verwendet werden soll (in der Regel ein DbSet<TEntity>).

sql
FormattableString

Die interpolierte Zeichenfolge, die eine SQL-Abfrage darstellt.

Gibt zurück

IQueryable<TEntity>

Eine IQueryable<T> Darstellung der interpolierten Zeichenfolgen-SQL-Abfrage.

Attribute

Gilt für:

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

Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs
Quelle:
RelationalQueryableExtensions.cs

Achtung

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.

Erstellt eine LINQ-Abfrage basierend auf einer unformatierten SQL-Abfrage.

Wenn der Datenbankanbieter das Verfassen in der bereitgestellten SQL-Datei unterstützt, können Sie mithilfe von LINQ-Operatoren context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)über die rohe SQL-Abfrage verfassen .

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, jede Benutzereingabe zu parametrisieren, um vor einem SQL-Einfügungsangriff zu schützen. Sie können Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen und dann Parameterwerte als zusätzliche Argumente angeben. Alle parameterwerte, die Sie angeben, werden automatisch in einen DbParameter context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)- konvertiert.

Diese Überladung akzeptiert auch DbParameter-Instanzen als Parameterwerte. Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden – 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)

Typparameter

TEntity

Der Typ der Elemente von source.

Parameter

source
IQueryable<TEntity>

Eine IQueryable<T> , die als Basis der rohen SQL-Abfrage (in der Regel ein DbSet<TEntity>) verwendet werden soll.

sql
RawSqlString

Die rohe SQL-Abfrage. NB. Hier kann ein Zeichenfolgenliteral übergeben werden, da RawSqlString er implizit in eine Zeichenfolge konvertiert wird.

parameters
Object[]

Die Werte, die Parametern zugewiesen werden sollen.

Gibt zurück

IQueryable<TEntity>

Eine IQueryable<T> Darstellung der rohen SQL-Abfrage.

Attribute

Gilt für:

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

Erstellt eine LINQ-Abfrage basierend auf einer unformatierten SQL-Abfrage.

Wenn der Datenbankanbieter das Verfassen in der bereitgestellten SQL-Datei unterstützt, können Sie mithilfe von LINQ-Operatoren context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)über die rohe SQL-Abfrage verfassen .

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, jede Benutzereingabe zu parametrisieren, um vor einem SQL-Einfügungsangriff zu schützen. Sie können Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen und dann Parameterwerte als zusätzliche Argumente angeben. Alle parameterwerte, die Sie angeben, werden automatisch in einen DbParameter context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)- konvertiert.

Sie können auch einen DbParameter erstellen und als Parameterwert angeben. Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden – 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)

Typparameter

TEntity

Der Typ der Elemente von source.

Parameter

source
IQueryable<TEntity>

Eine IQueryable<T> , die als Basis der rohen SQL-Abfrage (in der Regel ein DbSet<TEntity>) verwendet werden soll.

sql
String

Die rohe SQL-Abfrage.

parameters
Object[]

Die Werte, die Parametern zugewiesen werden sollen.

Gibt zurück

IQueryable<TEntity>

Eine IQueryable<T> Darstellung der rohen SQL-Abfrage.

Gilt für: