将一个字段放入阵列?

时间:2011-04-04 17:32:36

标签: c# linq

以下代码行从数据库中获取少量行,并将值Table.Id放入整数列表中。我想有一种方法可以将这段代码压缩成一行,但我不确定如何。

var result db.Table.Where(a=>a.Value>0).ToList();
List<int> ids = new List<int>();
foreach(var row in result){
    ids.Add(row.Id);
}

任何帮助将不胜感激,谢谢!

编辑:我的标题是数组,我的例子有一个列表,其中一个很好。对不起,如果有任何混淆。

3 个答案:

答案 0 :(得分:5)

var ids = db.Table.Where(a => a.Value > 0).Select(row => row.Id).ToList();

除非我的关闭,否则应该做到这一点

答案 1 :(得分:0)

试试这个:

var result = db.Table.Where(a=>a.Value>0)
                .Select(a=>a.Id)
                  .ToList(); 

答案 2 :(得分:0)

您也可以使用List.ForEach Method。如下所示:

db.Table.Where(a=>a.Value>0).ToList().ForEach(delegate(Table row) { ids.Add(row.Id); });