如何使用Linq将dataTable过滤到数据表?
您好我如何使用linq过滤数据表到数据表? 我有一个DropDownList,我可以选择模块列的值。 现在我想用这个模块列过滤DataTable。
这是我的数据表结构:
User | Host | TimeDiff | License | Telefon | Modul
这里的代码:
protected void drp_Modules_SelectedIndexChanged(object sender, EventArgs e) { string value = drp_Modules.SelectedValue; DataTable tb = (DataTable)Session["dt_Users"]; tb = from item in tb //????? LoadUsertable(tb); }
您最好使用DataTable.Select
方法,但如果必须使用LINQ,则可以尝试:
DataTable selectedTable = tb.AsEnumerable() .Where(r => r.Field("Modul") == value) .CopyToDataTable();
这将基于过滤值创建新的DataTable
。
如果您使用DataTable.Select
string expression = "Modul =" + value; DataRow[] selectedRows = tb.Select(expression);
在转换之前,您可以使用条件来检查存在的行。 Any.Linq名称空间是Any()工作所必需的
上述就是C#学习教程:如何使用Linq将dataTable过滤到数据表?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
var rows = values.AsEnumerable().Where (row => row.Field("Status") == action); if(rows.Any()){ DataTable dt = rows.CopyToDataTable(); }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1011484.html