日期:2014-05-17  浏览次数:20398 次

dt.Select()
我想请教一个问题:
有这个一个表DataTable dt=....;
其中有两个字段a,b,c都是字符串类型,但里面保存的都是数字。我如何通过比较a=b+c来筛选数据呢?
我这样写会报错;
dt.Select("convert(float,a)=(convert(float,b)+convert(float,c))")。求大神指教

以下是错误提示:
dt.Select("convert(float,REQ_QUAN)=0")
“dt.Select("convert(float,REQ_QUAN)=0")”引发了“System.Data.EvaluateException”类型的异常 System.Data.DataRow[] {System.Data.EvaluateException}

------解决方案--------------------
DataTable result=dt.AsEnumerable().Where(t=>int.Pares(t.Field<string>("b"))==int.Pares(t.Field<string>("c"))+int.Pares(t.Field<string>("a"))).CopyToDataTable();

------解决方案--------------------
将dt的字段设置为float不行吗?
------解决方案--------------------
Refer this:
http://www.cnblogs.com/insus/archive/2013/05/13/3075994.html