我加入了两个数据表并试图在数组中获取带有序列号的结果。
ID A B C
1 ab t j
2 cd h k
3 ds f g
无损
CID E F G
1 g y gg
2 ff hg vcb
3 df vb b
代码
var query = from r0w1 in dt.AsEnumerable()
join r0w2 in ndt.AsEnumerable()
on r0w1.Field<string>("ID") equals r0w2.Field<string>("CID")
select r0w2.ItemArray.Skip(1).Concat(r0w1.ItemArray).ToArray();
我在这里想要的是 linq 也应该生成序列号。所以,输出应该是这样的。
SNO ID A B C E F G
1 1 ab t j g y gg
2 2 cd h k ff hg vcb
3 3 ds f g df vb b
4...
如何在此处获取序列号?
最佳答案
你在这里做了一些奇怪的事情,但无论如何,这应该有效:
int serialNumber = 1;
var query = from r0w1 in dt.AsEnumerable()
join r0w2 in ndt.AsEnumerable()
on r0w1.Field<string>("ID") equals r0w2.Field<string>("CID")
select new string [] { serialNumber++.ToString() }
.Concat(r0w2.ItemArray.Skip(1))
.Concat(r0w1.ItemArray).ToArray();
关于c# - LINQ 生成序列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34261806/