使用C#搜索所有列时,DataGridView.DefaultView.RowFilter出现问题

时间:2015-08-28 15:30:06

标签: c# datagridview rowfilter

我目前正在尝试使用RowFilter方法来查找符合条件的记录。我用来执行此操作的代码是: -

StringBuilder sb = new StringBuilder();

sb.AppendFormat("Stock Number Like '%{0}%' OR Title Like '%{0}%' OR Listing Title Like '%{0}%' OR Description Like '%{0}%'", txtProductSearch.Text);  
dataTableProduct.DefaultView.RowFilter = sb.ToString();

然而,当它运行时,我收到以下错误: -

Syntax error: Missing operand after 'Number' operator.

我为String尝试了不同的格式,但都没有成功。如何改变它以允许搜索继续进行呢?

2 个答案:

答案 0 :(得分:0)

尝试将库存号更改为[库存号]。

答案 1 :(得分:0)

字段名称中的空格很可能是问题所在。对于SQL Server,如果字段名称是关键字或包含空格,则需要将字段名称括在括号[字段名称]中。在我看来,最好尽可能避免列名中的空格。使用下划线'Field_Name'或没有空格'FieldName'。