linq使用select创建索引

时间:2014-07-10 15:38:12

标签: c# linq

我有这个问题:

var query = (from x in be.tblEntries
             select new { x.Entry_PK, x.EntryStatus }).ToList();
var results = query.Select((index, x) => new { index, x });

基本上创建了一个索引列,问题是它创建了两个维数组:

{Index=1,{ Entry_PK = 32432, x.EntryStatus  =true}}

有没有办法让它将索引附加到一维中,如下所示:

{Index=1, Entry_PK = 32432, x.EntryStatus  =true}

1 个答案:

答案 0 :(得分:3)

不要选择对象,而是选择其属性,如:

var results = query.Select((index, x) => new { index, x.Entry_PK, x.EntryStatus });

如果您的收藏是内存收藏,那么您可以这样做:

var query = be.tblEntries
              .Select((x, i) => new { Index = i, x.Entry_PK, x.EntryStatus })
              .ToList();