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

linq查询DataSet 或DataTable
有一组数据保存在DataSet 或DataTable中如下:
 姓名 部门 工作年限
张三 开发部 2
李四 开发部 3
王五 开发部 5
赵六 财务部 1
钱七 财务部 6

我想查询部门这一列数据,比如条件是开发部,若有三条数据,则返回一个3,怎么实现呢?

------解决方案--------------------
C# code
int result=dt.AsEnumerable().Where(d=>d.<string>("部门")=="开发部").Count();

------解决方案--------------------
不一定要用linq啊.直接操作datatable也可以啊.
dataRow[] dt=DataTable.select("部门=条件");
int num=dt.Rows.Count;也可以
------解决方案--------------------
不一定要用linq啊.直接操作datatable也可以啊.
dataRow[] dt=DataTable.select("部门=条件");
int num=dt.Rows.Count;也可以 


------解决方案--------------------
int query=dt.表名.where(p=>p.部门=="开发部").Count();
 
------解决方案--------------------
DataRow[] rows = DataSet1.Select("部门='开发部'");
int count = rows.Length;
------解决方案--------------------
int result=dt.AsEnumerable().GroupBy(d=>d.<string>("部门")).Select(g=>g.Key).Count();
------解决方案--------------------
DataTable dt = new DataTable();
int count = (from temp in dt.AsEnumerable() where temp.Field<string>("部门") == "开发部" select temp).Count();
------解决方案--------------------
DataTable dt = new DataTable();
dt.Select("部门='开发部'").Count();
------解决方案--------------------
DataTable dt = new DataTable();
var s = (from temp in dt.AsEnumerable() select temp).Where(t => t.Field<string>("部门") == "开发部").Count();