首页 / .NET / 正文

.NET[C#]使用LINQ操作DataTable常用的方式

17052 发布于: 2017-12-29 读完约需4分钟

前言

在.NET[C#]的程序开发中,如果你还不会LINQ,那么你真的是OUT了,虽然说LINQ不是万能的,但没有LINQ,你的开发效率会大打折扣。

在.NET[C#]的开发中,我们又是如何使用LINQ对DataTable进行操作呢?

创建示例

//创建 DataTable 
DataTable dt= new DataTable();
dt.Columns.AddRange(New DataColumn[]
{
   new DataColumn("RowNo",typeOf(System.Int32)),
   new DataColumn("Name",typeOf(System.String))

});

//添加数据

dt.Rows.Add(new Object[]{1,"Test1"});
dt.Rows.Add(new Object[]{2,"Test2"});

LINQ操作DataTable示例

方式一

var results = from myRow in myDataTable.AsEnumerable()
where myRow.Field<int>("RowNo") == 1
select myRow;

方式二

var results = from DataRow myRow in myDataTable.Rows
    where (int)myRow["RowNo"] == 1
    select myRow

方式三



var query = from p in dt.AsEnumerable()
                    where p.Field<int>("RowNo") == 1
                    select new
                    {
                        name = p.Field<int>("RowNo"),
                        age= p.Field<string>("Name")                         
                    };

方式四

var results = from myRow in tblCurrentStock.AsEnumerable()
              where myRow.Field<int>("RowNo").ToUpper().StartsWith(tbSearchItem.Text.ToUpper())
              select myRow;
DataView view = results.AsDataView();

方式五

var row = (from result in dt.AsEnumerable().OrderBy( result => Guid.NewGuid()) select result).Take(3) ;

版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。

上一篇: HTML5中使用jQuery ajax异步上传文件,为什么在后台只获取到了文件名而没有文件内容?

下一篇: .NET[C#]LINQ按多列分组(Group By)并计算总和(Sum)

本文永久链接码友网 » .NET[C#]使用LINQ操作DataTable常用的方式

分享扩散:

发表评论

登录用户才能发表评论, 请 登 录 或者 注册