DbSet<TEntity>.SqlQuery(String, Object[]) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée une requête SQL brute qui retournera des entités dans ce jeu. Par défaut, les entités retournées sont suivies par le contexte ; cela peut être modifié en appelant AsNoTracking sur le DbSqlQuery<TEntity> retourné. Notez que les entités retournées sont toujours du type pour cet ensemble et jamais d’un type dérivé. Si la table ou les tables interrogées peuvent contenir des données pour d'autres types d'entités, la requête SQL doit être écrite convenablement pour garantir que seules les entités du type correct sont retournées.
Comme pour toute API qui accepte SQL, il est important de paramétrer toute entrée utilisateur pour vous protéger contre une attaque par injection de code SQL. Vous pouvez inclure des espaces réservés de paramètres dans la chaîne de requête SQL, puis fournir des valeurs de paramètre en tant qu’arguments supplémentaires. Toutes les valeurs de paramètre que vous fournissez sont automatiquement converties en DbParameter. Contexte. Blogs.SqlQuery(« SELECT * FROM dbo. Billets WHERE Author = @p0« , userSuppliedAuthor); Vous pouvez également construire un DbParameter et le fournir à SqlQuery. Cela vous permet d’utiliser des paramètres nommés dans la chaîne de requête SQL. Contexte. Blogs.SqlQuery(« SELECT * FROM dbo. Posts WHERE Author = @author« , new SqlParameter(« @author », userSuppliedAuthor));
public virtual System.Data.Entity.Infrastructure.DbSqlQuery<TEntity> SqlQuery (string sql, params object[] parameters);
abstract member SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery<'Entity (requires 'Entity : null)>
override this.SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery<'Entity (requires 'Entity : null)>
Public Overridable Function SqlQuery (sql As String, ParamArray parameters As Object()) As DbSqlQuery(Of TEntity)
Paramètres
- sql
- String
Chaîne de requête SQL.
- parameters
- Object[]
Paramètres à appliquer à la chaîne de requête SQL. Si des paramètres de sortie sont utilisés, leurs valeurs ne seront pas disponibles tant que les résultats n’auront pas été entièrement lus. Cela est dû au comportement sous-jacent de DbDataReader, consultez http://go.microsoft.com/fwlink/?LinkID=398589 pour plus d’informations.
Retours
Objet DbSqlQuery<TEntity> qui exécute la requête lorsqu’elle est énumérée.