Bonjour, je veux faire une recherche dans ma base par rapport à un ou des mots-clés tapés dans une textbox.

Mais j'obtiens une erreur me disant que mon nom de colonne est non valide, ce nom de colonne étant mon mot-clé...

Ma méthode addFilter:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
public void AddFilter (string sqlField, string val, bool caseInsensitive, bool bAddQuotes, string filterOperator) {
            string cs = caseInsensitive ? " COLLATE SQL_Latin1_General_CP1_CI_AS " : "";
 
            if (val != null) {
                if (val.IndexOf(',') == -1) {
                    if (!_rowFilter.EndsWith(" and "))
                        _rowFilter += " and " +  sqlField + cs + filterOperator + AddQuotes(val, bAddQuotes) + " and ";
                    else
                        _rowFilter +=  sqlField + cs + filterOperator + AddQuotes(val, bAddQuotes) + " and ";
                }
                else {
                    //multiple values, comma separated
                    string filter = "(";
                    char[] separator = { ',' };
                    string[] vals = val.Split(separator);
 
                    for (int i=0; i<vals.Length; i++) {
                        filter += sqlField + cs + filterOperator + AddQuotes(vals[i], bAddQuotes) + " or ";
                    }
 
                    _rowFilter += filter.Substring(0, filter.Length-4) + ") and ";
                }
            }
        }
Mon erreur:
Erreur lors de l'exécution de la commande de type StoredProcedure sur la base SQL Serveur : Nom de colonne non valide : 'test'.
L'appel à ma Proc Stockée:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public static DataTable GetTicketsByKeywords (int maxResults, string rowFilter, int userId) {
 
 
 
            DataSet obj = null;
 
            SQLServerManager sql = new SQLServerManager(System.Configuration.ConfigurationManager.ConnectionStrings["ticketmanager"].ConnectionString);
 
            List<System.Data.SqlClient.SqlParameter> parameters = new List<SqlParameter>();
            parameters.Add( new SqlParameter("@maxResults",maxResults) );
            parameters.Add(new SqlParameter("@rowFilter", rowFilter));
            parameters.Add(new SqlParameter("@userId", userId));
 
            try {
                return sql.ExecuteDataTable("TCK_SP_GetKeywordTickets", ref parameters);
                //obj = dbSQL.ExecuteDataSet(dbCommand);
            }
            catch (DBConnectionException) {
                throw;
            }
            catch (Exception ex) {
                throw new TicketDataLayerException(ex);
            }
            finally {
                if (sql != null)
                    sql.Close();
            }
        }
Merci d'avance à tous ceux qui s'intéresseront à la question.

Erazion.