[datatable]关于在DataTable中执行DataTable.Select(条件)返回DataTable的解决方法

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

009-04-2611:09关于在DataTable中执行DataTable.Select("条件")返回DataTable的解决方法

在实际编程工程中,常常遇到这样的情况:DataTable并不是数据库中的,或者DataTable尚未写到数据库,或者从数据库中读出的DataTable已经在本地被改动,又没有写回数据库(可能还要作其他改动),在这些情况下,其实只要用.NET 类库中提供的DataView类的强大功能(主要是用它的RowFilter属性),就能方便地解决这类查询问题。

常有网友在网上询问怎么在DataTable中执行DataTable.Select("条件")返回DataTable,今天我在这里给个解决方法给大家参考:

代码如下

/**////

///执行DataTable中的查询返回新的DataTable

///

///源数据DataTable

///查询条件

///

private DataTable GetNewDataTable(DataTable dt,string condition)

{

DataTable newdt = new DataTable();

newdt=dt.Clone();

DataRow[] dr = dt.Select(condition);

for(int i=0;i

{

newdt.ImportRow((DataRow)dr[i]);

}

return newdt;//返回的查询结果

}

例:DataRow dr=dt.Select(学号=108)[0];

string sss = dr[姓名].ToString();

例:DataRow[] rows = dt.Select(学号='108');

if(rows.Length 0)

{

string sss = rows[0][姓名].ToString();

}

例:Select后,框架不会变的,Select只是筛选记录,不会改变列。

string name=string.Empty;

DataRow[] rows = dt.Select(学号=108);

if (rows!=null rows.Length0)

name=rows[0][姓名].ToString();//第0行即返回值的第一行,即返回结果

例:string sss = dt.Select( 姓名= from Tables[0] where [学号]=108).ToString();

相关文档
最新文档