ObjectContext.ExecuteStoreCommand(String, Object[]) Méthode

Définition

Exécute directement une commande arbitraire sur la source de données à l'aide de la connexion existante.

public:
 int ExecuteStoreCommand(System::String ^ commandText, ... cli::array <System::Object ^> ^ parameters);
public int ExecuteStoreCommand (string commandText, params object[] parameters);
member this.ExecuteStoreCommand : string * obj[] -> int
Public Function ExecuteStoreCommand (commandText As String, ParamArray parameters As Object()) As Integer

Paramètres

commandText
String

Commande à exécuter dans le langage natif de la source de données.

parameters
Object[]

Tableau de paramètres à passer à la commande.

Retours

Nombre de lignes affectées.

Remarques

L'utilisation des commandes paramétrées aide à se protéger des attaques par injection de code SQL, dans lesquelles un attaquant « injecte » une commande dans une instruction SQL qui compromet la sécurité sur le serveur. Les commandes paramétrables protègent contre une attaque par injection SQL en garantissant que les valeurs reçues d’une source externe sont transmises en tant que valeurs uniquement, et ne font pas partie de l’instruction SQL. Par conséquent, les commandes SQL insérées dans une valeur ne sont pas exécutées au niveau de la source de données. Au lieu de cela, les valeurs sont évaluées uniquement comme valeurs de paramètre. En plus des avantages en matière de sécurité, les commandes paramétrées fournissent une méthode pratique pour organiser les valeurs transmises avec une instruction SQL ou à une procédure stockée.

La valeur de parameters peut être un tableau d'objets DbParameter ou un tableau de valeurs de paramètres. Si seules des valeurs sont fournies, un tableau d’objets DbParameter est créé en fonction de l’ordre des valeurs dans le tableau.

La commande store est exécutée dans le contexte de la transaction actuelle, si une transaction actuelle existe.

Pour plus d'informations, consultez les pages suivantes :

Exécution directe des commandes du magasin et

Comment : exécuter directement les commandes sur la source de données

S’applique à