Freigeben über


Database.SqlQuery-Methode

Geschützte Member einschließen
Geerbte Member einschließen

[Diese Seite bezieht sich auf Entity Framework Version 6. Die neueste Version ist als 'Entity Framework' NuGet-Paket verfügbar. Weitere Informationen zu Entity Framework finden Sie unter msdn.com/data/ef.]

Erstellt eine unformatierte SQL-Abfrage, die Elemente des angegebenen Typs zurückgibt.

Dieser Member wird überladen. Klicken Sie auf einen Namen in der Überladungsliste, um vollständige Informationen zu diesem Member sowie zu Syntax, Nutzung und Beispielen zu erhalten.

Überladungs liste

  Name Beschreibung
Öffentliche Methode SqlQuery<TElement>(String, Object[]) Erstellt eine unformatierte SQL-Abfrage, die Elemente des angegebenen generischen Typs zurückgibt.Der Typ kann jeder Typ sein, der Eigenschaften aufweist, die mit den Namen der von der Abfrage zurückgegebenen Spalten übereinstimmen, oder es kann ein einfacher primitiver Typ sein.Der Typ muss kein Entitätstyp sein.Die Ergebnisse dieser Abfrage werden nie vom Kontext nachverfolgt, auch wenn der Typ des zurückgegebenen Objekts ein Entitätstyp ist.Verwenden Sie die SqlQuery(String, Object[])-Methode, um Entitäten zurückzugeben, die vom Kontext nachverfolgt werden.Wie bei allen APIs, die SQL akzeptieren, müssen Sie darauf achten, alle Benutzereingaben zum Schutz vor SQL-Injection-Angriffen zu parametrisieren.Sie können in der SQL-Abfragezeichenfolge Platzhalter für Parameter einschließen und die Parameterwerte anschließend als zusätzliche Argumente angeben.Alle angegebenen Parameterwerte werden automatisch in einen DbParameter konvertiert.context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Als Alternative können Sie auch einen DbParameter erstellen und an SqlQuery übergeben.Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden.context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Öffentliche Methode SqlQuery(Type, String, Object[]) Erstellt eine unformatierte SQL-Abfrage, die Elemente des angegebenen Typs zurückgibt.Der Typ kann jeder Typ sein, der Eigenschaften aufweist, die mit den Namen der von der Abfrage zurückgegebenen Spalten übereinstimmen, oder es kann ein einfacher primitiver Typ sein.Der Typ muss kein Entitätstyp sein.Die Ergebnisse dieser Abfrage werden nie vom Kontext nachverfolgt, auch wenn der Typ des zurückgegebenen Objekts ein Entitätstyp ist.Verwenden Sie die SqlQuery(String, Object[])-Methode, um Entitäten zurückzugeben, die vom Kontext nachverfolgt werden.Wie bei allen APIs, die SQL akzeptieren, müssen Sie darauf achten, alle Benutzereingaben zum Schutz vor SQL-Injection-Angriffen zu parametrisieren.Sie können in der SQL-Abfragezeichenfolge Platzhalter für Parameter einschließen und die Parameterwerte anschließend als zusätzliche Argumente angeben.Alle angegebenen Parameterwerte werden automatisch in einen DbParameter konvertiert.context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Als Alternative können Sie auch einen DbParameter erstellen und an SqlQuery übergeben.Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden.context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

Oben

Siehe auch

Verweis

Database Klasse

System.Data.Entity-Namespace