3

这段代码用于修剪每个数据行的每个数据单元中的所有空格。我怎样才能得到这个代码:

var dataRows = dataTable.AsEnumerable();
foreach (var row in dataRows)
{
     var cellList = row.ItemArray.ToList();
     row.ItemArray = cellList.Select(x => x.ToString().Trim()).ToArray();
}

进入一行代码,所以我不必遍历每一行?像这样的东西,但它不起作用:

dataTable.AsEnumerable().Select(y => y.ItemArray.ToList()).Select(x => x.ToString().Trim());
4

3 回答 3

2

如果你喜欢 LINQish 类型:

  dataTable.AsEnumerable().ToList()
        .ForEach(row =>
        {
            var cellList = row.ItemArray.ToList();
            row.ItemArray = cellList.Select(x => x.ToString().Trim()).ToArray();
        });
于 2012-08-24T14:44:29.170 回答
1

使用 linq,您最终无法更改项目值,您应该运行 for 循环(或 foreach)来更改字段值。

于 2012-08-24T14:38:20.130 回答
1

例如

var iq = obj from dataTable.asEnumerable() select new{
PersonName = a.Field<string>("PersonName"),
PersonID = a.Field<decimal>("PersonID"),
ParticipantString = a.Field<string>("DisplayString"),
PersonUserName = d.Field<string>("UserName")
}
于 2012-08-24T14:42:10.100 回答