使用Linq " c# "提取数据表值

本文关键字:quot 数据表 提取 使用 Linq | 更新日期: 2023-09-27 18:14:16

我有一个数据表dtRecords的值如下:

RollNo 名称

约翰

120

121 johney

122 Sam

我想在列表框中添加这些值,格式如下。

RollNo:[RollNo], Name: [Name]

注:[RollNo]是ColumnName标识格式

预期输出:

RollNo: 120,Name: John

RollNo: 121,Name: johnny

我可以使用for循环来实现这一点,但是是否有其他方法,例如使用linq或任何其他概念?

请在你的建议中加入例子。

我尝试使用下面的linq代码,但我没有得到正确的输出。

string mystring="RollNo:[RollNo] , Name: [Name]";
List<DataColumn> cols = ClsGlobal.dtRecords.Columns.Cast<DataColumn>().ToList();
dtRecords.AsEnumerable().ToList().ForEach(r => cols.ForEach(c =>listBox1.Items.Add(mystring.Replace("[" + c.ColumnName + "]", r[c.ColumnName].ToString()))));

使用Linq " c# "提取数据表值

像这样?

var query = (from c in dt.AsEnumerable()
             select new { Value=c.Field<int>("RollNo"), 
             Text=c.Field<string>("Name")}).ToList();

然后将query绑定到ListBox。

OP只需要字符串;那么这个就可以了:

var query = (from c in dt.AsEnumerable()
         select "RollNo: "+ c.Field<int>("RollNo")+ " , Name: "+ c.Field<string>("Name")).ToList();