Freigeben über


RelationalQueryableExtensions Klasse

Definition

Relationale datenbankspezifische Erweiterungsmethoden für LINQ-Abfragen.

public static class RelationalQueryableExtensions
type RelationalQueryableExtensions = class
Public Module RelationalQueryableExtensions
Vererbung
RelationalQueryableExtensions

Methoden

AsSingleQuery<TEntity>(IQueryable<TEntity>)

Gibt eine neue Abfrage zurück, die zum Laden der Sammlungen in den Abfrageergebnissen in einer einzelnen Datenbankabfrage konfiguriert ist.

AsSplitQuery<TEntity>(IQueryable<TEntity>)

Gibt eine neue Abfrage zurück, die zum Laden der Sammlungen in den Abfrageergebnissen über separate Datenbankabfragen konfiguriert ist.

CreateDbCommand(IQueryable)

Erstellt eine DbCommand Einrichtung zum Ausführen dieser Abfrage.

ExecuteDelete<TSource>(IQueryable<TSource>)

Löscht alle Datenbankzeilen für die Entitätsinstanzen, die der LINQ-Abfrage aus der Datenbank entsprechen.

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

Löscht asynchron Datenbankzeilen für die Entitätsinstanzen, die der LINQ-Abfrage aus der Datenbank entsprechen.

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

Updates alle Datenbankzeilen für die Entitätsinstanzen, die mit der LINQ-Abfrage aus der Datenbank übereinstimmen.

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

Aktualisiert asynchron Datenbankzeilen für die Entitätsinstanzen, die der LINQ-Abfrage aus der Datenbank entsprechen.

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 für die angegebene SQL unterstützt, können Sie die SQL-Rohabfrage mithilfe von LINQ-Operatoren - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)erstellen.

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, alle Benutzereingaben zu parametrisieren, um vor einem SQL-Einschleusungsangriff zu schützen. Sie können interpolierte Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen. Alle interpolierten Parameterwerte, die Sie angeben, 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 SQL-Rohabfrage.

Wenn der Datenbankanbieter das Verfassen für die angegebene SQL unterstützt, können Sie die SQL-Rohabfrage mithilfe von LINQ-Operatoren - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)erstellen.

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

Diese Überladung akzeptiert auch DbParameter-Instanzen als Parameterwerte. Dadurch 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 SQL-Rohabfrage.

Wenn der Datenbankanbieter das Verfassen für die angegebene SQL unterstützt, können Sie die SQL-Rohabfrage mithilfe von LINQ-Operatoren - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)erstellen.

Wie bei jeder API, die SQL akzeptiert, ist es wichtig, alle Benutzereingaben zu parametrisieren, um vor einem SQL-Einschleusungsangriff zu schützen. Sie können Parameterplatzhalter in die SQL-Abfragezeichenfolge einschließen und dann Parameterwerte als zusätzliche Argumente angeben. Alle von Ihnen angegebenen Parameterwerte 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. Dadurch können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden: context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

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

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

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

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

Gilt für: