我有一个列表中包含的类集合,它告诉我对Excel工作表进行了哪些更改。例如,如果单元格在Excel工作表中已更改,则该类包含诸如rowid,行索引和单元格地址之类的属性。此外,我还有一个数据表,它只用一个识别列来反映excel表上的内容。我想要做的是通过linq语句更新Class集合,该语句找到id匹配的数据的索引并将其设置到集合中到目前为止,我有这个linq语句,它为行索引返回0
ExcelCollectionDetail.Join(Datatable.AsEnumerable(),
ExcelCellChange => ExcelCellChange.Id,
dt => dt.Field<string>(id),
(ExcelCellChange , dt) => new { CellChange, dt})
.Select((Obj, index) => new { Obj, index })
.Where(x => x.dt.Field<string>(id) == x.Obj.ExcelCellChange.Id).ToList()
.ForEach(x => {
int RowIndex = x.index;
x.Obj.CellChange.CellRowIndex = RowIndex;
});