Oui, vous avez mal compris le message. Le SQL est transmis tel quel et doit contenir le bon :param1
ou @param1
etc. Le "pas de préfixe du tout " parle du code que vous ne voyez pas - spécifiquement, s'assurer que le code le fait (via un mécanisme) :
cmd.Parameters.Add("param1", 963);
contre
cmd.Parameters.Add("@param1", 963);
contre
cmd.Parameters.Add(":param1", 963);
La première (sans préfixe) est l'option correcte et préférée.
Si vous souhaitez que le SQL de votre code soit indépendant des paramètres, vous pouvez utiliser les informations d'ici :Obtenir le préfixe du paramètre dans ADO.NET
Cependant, le SQL est rarement assez proche pour que la simple recherche du préfixe du paramètre résolve tous les problèmes.