错误"无法在System.Int32'上执行类似操作和' System.String'"设置DataGridView数据源

时间:2014-08-19 20:46:47

标签: c# sql winforms visual-studio-2010

我使用Visual Studio在Windows应用程序中创建了一个数据网格视图,我试图用搜索文本框查询它。该字段是一系列数字,但我已将其设置为Varchar(10)

当我使用下面的命令时,我收到以下错误

  

无法在'System.Int32'和'System.String'

上执行Like操作

代码:

DataView DV = new DataView(dbdataset);
DV.RowFilter = string.Format("JobNumber Like '%{0}%' ", textBox1.Text);
dataGridView1.DataSource = DV;

由于

1 个答案:

答案 0 :(得分:7)

在执行此类操作之前,将JobNumber转换为字符串。

DV.RowFilter = string.Format("convert(JobNumber, 'System.String') Like '%{0}%' ",
                             textBox1.Text);

DataViews可以在其过滤器中使用many different options

正如here所解释的那样,过滤是通过.NET和DataView进行的,而不是通过MySql进行的