我是linq的新手.到目前为止,我一直主要使用这样的linqTOsql : MyRepository.Mytable.Where(x => x.id == 2).
我想知道如何从这种类型的查询中获取一个列表,并将一个特定的参数放入一个新的简单列表,如List<long>.
所以我得到了这样的记录:
List<Entry2Cats> e2c = genesisRepository.Entry2Cats.Where( x => x.streamEntryID == id).ToList()
Run Code Online (Sandbox Code Playgroud)
我希望获得每个项目的类别ID参数,e2c以便我可以将其移动到List<long>.
显然,这可以通过以下方式简单地完成foreach:
List<Entry2Cats> e2c = genesisRepository.Entry2Cats
.Where(x => x.streamEntryID == id)
.ToList();
List<long> e2cCatIDs = new List<long>();
foreach (Entry2Cats item in e2c)
{
e2cCatIDs.Add(item.catID);
}
Run Code Online (Sandbox Code Playgroud)
这可以用linq完成吗?如果可以的话,我是否应该打扰它或者是foreach同样好的?
List<long> ids = genesisRepository.Entry2Cats
.Where(x => x.streamEntryID == id)
.Select(a => a.catID)
.ToList();
Run Code Online (Sandbox Code Playgroud)
只需使用Select即可获取ID.
| 归档时间: |
|
| 查看次数: |
131 次 |
| 最近记录: |