2013-03-28 41 views
1

我怎樣才能使表達式添加一個計數器(ID)是1,2,3,4等...?我只是想有一些unqiue鍵來標識數據如何在lambda中創建標識列?

 var query = data.Select(x => 
      new DemoItemV1 
      { 
       Id = x.Field<double>("ID"), 
       AreaId = x.Field<int>("1Area ID"), 
       CategoryTitle = x.Field<string>("2Table Title") 
      }).ToList(); 
+0

看看這一個。它顯示如何添加索引。http://stackoverflow.com/questions/365086/how-to-project-a-line-number-into-linq-query-results –

回答

1

我不認爲你可以在純粹做一個LINQ到SQL或LINQ到實體查詢。但是,由於您已經將其實現爲列表,因此您可以這樣做:

var query = data.Select(x => 
     new DemoItemV1 
     { 
      AreaId = x.Field<int>("1Area ID"), 
      CategoryTitle = x.Field<string>("2Table Title") 
     }) 
     .AsEnumerable() 
     .Select((x, i) => { x.ID = i + 1; return x }) 
     .ToList(); 
+0

偉大的作品! ! – punkouter