对datatable进行linq过滤

实例:

DataTable data = new DataTable();

data.Columns.Add("schoolid", Type.GetType("System.Int32"));

data.Columns.Add("ccid", Type.GetType("System.Int32"));

DataRow newRow1 = data.NewRow();

newRow1["schoolid"] = 2;

newRow1["ccid"] = 1;

data.Rows.Add(newRow1);

DataRow newRow2 = data.NewRow();

newRow2["schoolid"] = 2;

newRow2["ccid"] = 2;

data.Rows.Add(newRow2);

DataRow newRow3 = data.NewRow();

newRow3["schoolid"] = 1;

newRow3["ccid"] = 2;

data.Rows.Add(newRow3);

string ceshi = "1,2";

var dataSelect = data.AsEnumerable();

dataSelect = from r in dataSelect

where r.Field<int>("schoolid") == 2 && !(new int?[] {int.Parse(ceshi) }).Contains(r.Field<int>("ccid"))                          select r;                         foreach (DataRow row in dataSelect)

{

  string schoolid = row["schoolid"].ToString();

string ccid = row["ccid"].ToString();

}

时间: 2024-10-01 11:45:04

对datatable进行linq过滤的相关文章

DataTable/Array Linq查询

DataTable Linq查询 1.查询DataRow 1 IEnumerable<DataRow> q1 = from r in dt.AsEnumerable() 2 where r.Field<int>("ID") % 2 == 0 3 select r; 2.查询某个字段 1 var query2 = 2 from pl in dt.AsEnumerable( ) 3 select pl.Field<string>("Name&q

DataTable 用linq分组查询

DataRow drt = null; var tlist = dt.Select("Atmbs LIKE '%" + d["Two_Code"] + "%'").AsEnumerable().GroupBy(a => a.Field<string>("STATUS_MISSIONN")).Select(e => new { STATUS_MISSIONN = e.Key, Number = e.Cou

DataTable中Linq查询(where,group by)

//经理 List<string> jtlist = (from t in jtTable.AsEnumerable() group t by new { t1 = t.Field<string>("JTManager") } into m select new { JTManager = m.Key.t1 } into c where !string.IsNullOrEmpty(c.JTManager) select c.JTManager).ToList()

关于Linq对DataTable和List各自的两个集合筛选的相关操作技巧

项目中用到了对两个集合的帅选等操作,简单总结下 1.Linq操作多个Datable 可以通过AsEnumerable()方法对DataTable进行Linq操作 //获取数据表所有数据 DataTable allJDt = GetDbDataTable(m_DBFile, "select * from 监测点"); //所有插入的数据 DataTable jAddDt = dt.AsEnumerable() .Where(n => n.Field<string>(&q

使用LinQ To Object把数组或DataTable中的数据进行向上汇总

来自森大科技官方博客http://www.cnsendblog.com/index.php/?p=215GPS平台.网站建设.软件开发.系统运维,找森大网络科技!http://cnsendnet.taobao.com 最近搞造价系统时遇到一些需要汇总的指标数据 类似下面的结构 指标A     1000    指标B    500    指标C    500 指标A = B+C 当我们需要对这些数值进行校验时,实现的方法有很多种,数据库里写存储过程去更新每行数据, 或者我们在程序中遍历等等,但用起

Linq技术三:Linq to Object 和生成数据表的扩展方法

这篇来谈论一下Linq第三个方面的应用:Linq to Object,只要是继承了IEnumerable或IQueryable接口的Object都能使用Linq特性进行操作.在操作过程当中可能很多人都觉得不好调试不能实时地观察结果数据集,想把IQuery的Linq查询语句转换成数据表DataTable,要怎么实现转换呢?来看一下. 先来说一场景解释一下为什么需要用Linq来解决一些问题,能解决一些什么样的问题,相对于SQL,DataTable等一些传统操作方式有哪些优势? 场景:目前主要数据源有

DataTables warning: table id=data-table - Requested unknown parameter &#39;3&#39; for row 0.

本文为博主原创,未经允许,不得转载: 在使用jquery 的datatable时,报错在页面弹出弹出框,并提示以下内容: DataTables warning: table id=data-table - Requested unknown parameter '3' for row 0. For more information about this error, please see http://datatables.net/tn/4 错误原因: 在进行列展示的时候,未能解析出对应的值,然

LINQ巩固

LINQ巩固 LINQ过滤运算符 Where 基于谓词函数过滤值 测试例子如下: public class TestModel { public string Name { get; set; } public string Age { get; set; } } List<TestModel> lst = new List<TestModel>() { new TestModel(){Name = "张三" }, new TestModel(){Name =

ADO.NET快速入门——使用DataSet返回数据

相关知识: DataSet和DataAdapter的内部结构: DataSet通过DataAdapter从数据库中获取数据 DataSet对象内部包括一个集合(Tables),也就是可以拥有多个表(DataTables):每个表存放着从数据库放回的一个结果集(一般由一条SELECT语句产生一个结果集) DataTable对象包含一个行集合(Rows),集合中的每个元素都是一个DataRow类型的对象.DataRow提供了通过下标或者列名进行访问字段数据的操作 DataTable对象还包含一个列集