.NET(C#)使用Linq语句查询DataTable的数据操作

C#开发 2015-10-12 595浏览 收藏本文

.NET(C#)的开发过程,如果想使用Linq语句来查询DataTable应该怎么做呢?很简单,使用.NET Framework中System.Data命名空间下的DataTableExtensions扩展类的AsEnumerable()静态方法便可轻松使用Linq来查询DataTable的数据,我们通过一个简单的示例来看具体如何操作,代码如下:

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;

namespace LinqQueryDataTableDemo
{
  class Program
  {
    static void Main(string[] args)
    {
      DataTable dt = new DataTable();
      dt.Columns.AddRange(new DataColumn[]{
        new DataColumn("Id",typeof(System.Int32)),
        new DataColumn("UserName",typeof(System.String)),
        new DataColumn("Age",typeof(System.Int32))
      });

      //模拟数据行
      dt.Rows.Add(new object[] { 1, "Jeck", 20 });
      dt.Rows.Add(new object[] { 2, "Rose", 22 });
      dt.Rows.Add(new object[] { 3, "Peter", 25 });

      //查询DataTable中Id=1的行的数据
      DataRow row = dt.AsEnumerable().Where(x=>x.Field<Int32>("Id")==1).FirstOrDefault();
      
      //输出查询到的记录行的每一列数据
      foreach (DataColumn col in dt.Columns)
      {
        Console.WriteLine("{0}:{1}",col.ColumnName,row[col.ColumnName]);
      }
    }
  }
}
示例运行结果如图: query-datatable-using-linq 怎么样,.NET(C#)使用Linq语句查询DataTable的数据是不是很简单呢?

转载请注明:图享网 » .NET(C#)使用Linq语句查询DataTable的数据操作

验证码