Partager via


Database.SqlQuery, méthode (Type, String, Object[])

[Cette page concerne Entity Framework version 6. La dernière version est disponible sous le nom de package 'Entity Framework' NuGet. Pour plus d'informations sur Entity Framework, consultez msdn.com/data/ef.]

Crée une requête SQL brute qui retournera des éléments du type donné. Le type peut être tout type possédant des propriétés correspondantes aux noms des colonnes retournées par la requête, ou peut être un type primitif simple. Le type spécifié n'est pas nécessairement un type d'entité. Les résultats de cette requête ne sont jamais suivis par le contexte, même si le type d'objet retourné est un type d'entité. Utilisez la méthode SqlQuery(String, Object[]) pour retourner des entités suivies par le contexte. Comme pour tout API qui accepte SQL, il est important de paramétrer toutes les entrées utilisateur afin de se prémunir contre une attaque d'injection SQL. Vous pouvez inclure des espaces de paramètre réservés dans la chaîne de requête SQL, puis fournir des valeurs de paramètre comme arguments supplémentaires. Toute valeur de paramètre fournie sera automatiquement convertie en un DbParameter. context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Sinon, construisez un DbParameter et fournissez-le à SqlQuery. Cela vous permet d'utiliser des paramètres nommés dans la chaîne de requête SQL. context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

Espace de noms :  System.Data.Entity
Assembly :  EntityFramework (dans EntityFramework.dll)

Syntaxe

'Déclaration
Public Function SqlQuery ( _
    elementType As Type, _
    sql As String, _
    ParamArray parameters As Object() _
) As DbRawSqlQuery
'Utilisation
Dim instance As Database 
Dim elementType As Type 
Dim sql As String 
Dim parameters As Object()
Dim returnValue As DbRawSqlQuery 

returnValue = instance.SqlQuery(elementType, _
    sql, parameters)
public DbRawSqlQuery SqlQuery(
    Type elementType,
    string sql,
    params Object[] parameters
)
public:
DbRawSqlQuery^ SqlQuery(
    Type^ elementType, 
    String^ sql, 
    ... array<Object^>^ parameters
)
member SqlQuery : 
        elementType:Type * 
        sql:string * 
        parameters:Object[] -> DbRawSqlQuery
public function SqlQuery(
    elementType : Type, 
    sql : String, 
    ... parameters : Object[]
) : DbRawSqlQuery

Paramètres

  • elementType
    Type : System.Type
    Type d'objet retourné par la requête.
  • parameters
    Type : System.Object[]
    Paramètres à appliquer à la chaîne de requête SQL. Si des paramètres de sortie sont utilisés, leurs valeurs ne seront disponibles qu'après lecture complète des résultats. Cela est dû au comportement sous-jacent de DbDataReader. Pour plus d'informations, consultez https://go.microsoft.com/fwlink/?LinkID=398589.

Valeur de retour

Type : System.Data.Entity.Infrastructure.DbRawSqlQuery
Objet DbRawSqlQuery qui exécute la requête lorsqu'il est énuméré.

Voir aussi

Référence

Database Classe

Surcharge SqlQuery

Espace de noms System.Data.Entity