C# Linq获取数据表索引并更新集合
我有一个包含在列表中的类集合,它告诉我对excel工作表做了哪些更改。例如,如果excel工作表中的某个单元格发生了更改,则该类包含一个属性,如rowid、行索引和单元格地址。此外,我还有一个datatable,它反映了excel工作表上的内容,只是带有一个标识列。我试图通过linq语句更新类集合,该语句查找ID匹配的datatable的索引,并将其设置到集合中。到目前为止,我有一个linq语句,它为行索引返回0C# Linq获取数据表索引并更新集合,c#,linq,C#,Linq,我有一个包含在列表中的类集合,它告诉我对excel工作表做了哪些更改。例如,如果excel工作表中的某个单元格发生了更改,则该类包含一个属性,如rowid、行索引和单元格地址。此外,我还有一个datatable,它反映了excel工作表上的内容,只是带有一个标识列。我试图通过linq语句更新类集合,该语句查找ID匹配的datatable的索引,并将其设置到集合中。到目前为止,我有一个linq语句,它为行索引返回0 ExcelCollectionDetail.Join(Datatable.As
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;
});
ExcelCollectionDetail.Join(Datatable.AsEnumerable(),
ExcelCellChange=>ExcelCellChange.Id,
dt=>dt.字段(id),
(ExcelCellChange,dt)=>new{CellChange,dt})
.Select((Obj,index)=>new{Obj,index})
.Where(x=>x.dt.Field(id)==x.Obj.ExcelCellChange.id).ToList()
.ForEach(x=>{
int RowIndex=x.index;
x、 Obj.CellChange.CellRowIndex=行索引;
});
您在这一句话中做了很多不同的事情。把它分成不同的部分,找出错误发生的地方。一旦您这样做了,您就可以创建一个更具体的问题。我正在尝试根据集合中的匹配id查找Datatable行的索引,Datatable行idForEach返回void
。只显示属于您问题的代码。