DataTable.Select()中的表达式中如何取出取值范围,我要取出一定的金钱数字,交易金额语句应该怎样写
dr = dt_tmp.Select("订单状态 like '%" + cboOrderState.Text.Trim() + "%' and 交易金额 Between " + txtPayAmount.Text.Trim() + " and " + txtPayAmount1.Text.Trim());我是这样写的但是一直出错,不支持between ,郁闷。我不知道怎么做了。请各位大侠指教。
你不会换个思路吗?
交易金额 > txtPayAmount.Text.Trim()
交易金额 < txtPayAmount1.Text.Trim()
DataTable又不是Sql,为啥要支持between ...and ? 这类问题其实直接按F1,查看DataTable.Select 方法相关帮助 就能知道支持哪些操作符
你试试
dr = dt_tmp.Select("订单状态 like '%" + cboOrderState.Text.Trim()
+ "%' and 交易金额 Between '"
+ txtPayAmount.Text.Trim()
+ "' and '" + txtPayAmount1.Text.Trim()+"'");
另外,极力反对这种拼接字符串的习惯。最起码可以用这个
string strFilter="订单状态 like '%{0}%' and 交易金额 Between '{1}' and '{2}'" ;
strFilter=string.Format(strFilter,txtPayAmount.Text.Trim(),txtPayAmount.Text.Trim(),txtPayAmount1.Text.Trim());
dr = dt_tmp.Select(strFilter);
换个思路用< 、>