我正在尝试在gridview中搜索数据库。当我在文本框中输入任何内容时,我收到此错误:
语法错误在'like'运算符
之前缺少操作数
这是代码:
private void txtGrid_TextChanged(object sender, EventArgs e)
{
DataView dv = new DataView(dt);
dv.RowFilter = ""+cbGrid.Text + " like '%" + txtGrid.Text + "%'";
gridPlayers.DataSource = dv;
}
我认为它可能是'
,但我搜索并阅读了我能找到的所有其他相关问题。
答案 0 :(得分:1)
听起来cbGrid.Text
是一个空字符串。如果缺少操作数,那是因为没有提供(它是空白的)。
可能的解决方案是确保仅在值不为空时运行过滤器,或者为其指定默认值。
private void txtGrid_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(cbGrid.Text))
{
// only run when not empty
DataView dv = new DataView(dt);
dv.RowFilter = ""+cbGrid.Text + " like '%" + txtGrid.Text + "%'";
gridPlayers.DataSource = dv;
}
}