DataTable的compute方法问题,求大神解答 DataTablecompute 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Refer here:http://www.cnblogs.com/insus/p/3347465.html 你要计算MinVal列的最小值?dt.Compute("min([MinVal])", "")); 有点问题,其实是这样的DataTable dt = new DataTable();dt.Columns.Add("[JH.3DCS.3CE3216B]");dt.Rows.Add(0.1);dt.Rows.Add(0.2);dt.Rows.Add(0.3);dt.Rows.Add(0.4);我想查询[JH.3DCS.3CE3216B]列的最小值dt.Compute("min([JH.3DCS.3CE3216B])", ""));会报找不到列名 Linq可以解决!但是怎么用compute解决呢 dt.Compute(@"min([JH.3DCS.3CE3216B])", "");请结贴。谢谢。 你的列非得要弄的那么奇怪吗?? DataTable dt = new DataTable(); dt.Columns.Add("ColName",typeof(string)); dt.Columns.Add("MinVal",typeof(decimal)); dt.Rows.Add("1",1.1); dt.Rows.Add("2",2.2); var o = dt.Compute("min(MinVal)", ""); Response.Write(o);如果你的列里面有.肯定不行的..加了[]也不行 改名吧 下划线什么的 也可以啊... 你的列名加错了DataTable dt = new DataTable(); dt.Columns.Add("JH.3DCS.3CE3216B"); dt.Rows.Add(0.1); dt.Rows.Add(0.2); dt.Rows.Add(0.3); dt.Rows.Add(0.4); Console.WriteLine(dt.Compute("min([JH.3DCS.3CE3216B])", "")); 未找到列 [JH.3DCS.3CE3216B]。 var dt = new DataTable(); dt.Columns.Add("JH.3DCS.3CE3216B", typeof (int)); for (int i = 1; i <= 10; i++) { DataRow dRow = dt.NewRow(); dRow["JH.3DCS.3CE3216B"] = i; dt.Rows.Add(dRow); } object res = dt.Compute(@"min([JH.3DCS.3CE3216B])", ""); Console.WriteLine(res); 我还是用HashTable把列名的对应关系存起来,后边方便取,列里边有的是[1.g1g. g],有的没有aa2.dd4 列名是这样的[JH.3DCS.3CE3216B]dt.Columns.Add("[JH.3DCS.3CE3216B]", typeof (int)); 最后还是采用2楼的LInq解决吧,谢谢大家!!! 这么快结帖:http://www.cnblogs.com/insus/p/3718416.html 问一个比较常见的设计方面的问题: gridview绑定 问个报表问题..谢谢. 如何在.net中调用bo报表 ajaxpro 数据传递与接收的问题 GirdView数据分页遇到一些问题,急盼高手帮忙! 求高手帮解决一个关于从数据库导出数据的问题 Visual Studio .NET 2003 专业版和企业版有什么不同?? 关于sql server2000和asp.net开发的网站打包的问题 请问在C#中如何将字符型的转化为数字型的? jquery ajax的data参数不能为汉字吗? 这段代码哪里有吗?为什么运行后没有更改数据
http://www.cnblogs.com/insus/p/3347465.html
DataTable dt = new DataTable();
dt.Columns.Add("[JH.3DCS.3CE3216B]");
dt.Rows.Add(0.1);
dt.Rows.Add(0.2);
dt.Rows.Add(0.3);
dt.Rows.Add(0.4);
我想查询[JH.3DCS.3CE3216B]列的最小值
dt.Compute("min([JH.3DCS.3CE3216B])", ""));会报找不到列名
Linq可以解决!
但是怎么用compute解决呢
请结贴。谢谢。
DataTable dt = new DataTable();
dt.Columns.Add("ColName",typeof(string));
dt.Columns.Add("MinVal",typeof(decimal));
dt.Rows.Add("1",1.1);
dt.Rows.Add("2",2.2);
var o = dt.Compute("min(MinVal)", "");
Response.Write(o);
如果你的列里面有.肯定不行的..加了[]也不行 改名吧 下划线什么的 也可以啊...
DataTable dt = new DataTable();
dt.Columns.Add("JH.3DCS.3CE3216B");
dt.Rows.Add(0.1);
dt.Rows.Add(0.2);
dt.Rows.Add(0.3);
dt.Rows.Add(0.4);
Console.WriteLine(dt.Compute("min([JH.3DCS.3CE3216B])", ""));
for (int i = 1; i <= 10; i++)
{
DataRow dRow = dt.NewRow();
dRow["JH.3DCS.3CE3216B"] = i;
dt.Rows.Add(dRow);
}
object res = dt.Compute(@"min([JH.3DCS.3CE3216B])", "");
Console.WriteLine(res);
dt.Columns.Add("[JH.3DCS.3CE3216B]", typeof (int));
最后还是采用2楼的LInq解决吧,
谢谢大家!!!
http://www.cnblogs.com/insus/p/3718416.html