gpt4 book ai didi

c# - 在 linq 中,如何从列表中取出特定参数并构建不同类型的新列表?

转载 作者:行者123 更新时间:2023-11-30 19:33:08 25 4
gpt4 key购买 nike

我是 linq 的新手。到目前为止,我一直主要像这样使用 linqTOsql:MyRepository.Mytable.Where(x => x.id == 2) .

我想知道如何从那种类型的查询中获取一个列表并将特定参数放入一个新的简单列表中,例如 List<long> .

所以我得到这样的记录:

List<Entry2Cats> e2c = genesisRepository.Entry2Cats.Where( x => x.streamEntryID == id).ToList()

我想获取 e2c 中每个项目的类别 ID 参数所以我可以把它移到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);
}

这可以仅使用 linq 来完成吗?如果可以的话,我是否应该为它烦恼或者是 foreach一样好?

最佳答案

List<long> ids = genesisRepository.Entry2Cats
.Where(x => x.streamEntryID == id)
.Select(a => a.catID)
.ToList();

只需使用 Select 即可仅获取 ID。

关于c# - 在 linq 中,如何从列表中取出特定参数并构建不同类型的新列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4247570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com