“无法对 System.Decimal 和 System.String 执行“Like”。”

use*_*271 5 c#

我在搜索DataGridView价格(十进制)时遇到问题,此代码适用于字符串类型,但当我尝试搜索价格时出现错误:“无法在 System.Decimal 和 System.String 上执行“Like”。”
这是代码:

BindingSource bs = new BindingSource();
bs.DataSource = dataGridView1.DataSource;
bs.Filter = "price like '%" + Convert.ToDecimal(textBox16.Text) + "%'";
dataGridView1.DataSource = bs;
Run Code Online (Sandbox Code Playgroud)

Adi*_*dil 2

您正在尝试使用decimalas string,这就是您收到错误的原因。您必须对数值使用运算符,例如<, >, =

BindingSource bs = new BindingSource();
bs.DataSource = dataGridView1.DataSource;
bs.Filter = "price > " + Convert.ToDecimal(textBox16.Text) ;
dataGridView1.DataSource = bs;
Run Code Online (Sandbox Code Playgroud)

  • @user2263271,请务必在时间到时将其标记为答案。 (3认同)