我有一个名为BG的类,它具有一个名为Name Code的属性。
我实例化了一个名为bgList的对象。
现在,我试图获取其“作物”属性设置为cropName的对象的所有代码。

我想将以下工作代码转换为linq,但是对于我一生无法做到—非常确定我缺少某些东西:

    List<string> breedingGroupsAndRoles = new List<string>();
    for (int i = 0; i < bgList.Count; i++)
    {
        if (bgList[i].Crop == cropName)
            breedingGroupsAndRoles.Add(bgList.[i].Code);
    }


我最接近的是这个,但它只会使我获得第一项:

    breedingGroupsAndRoles.Add(bgrList.Find(c => c.Crop == cropName).Role);

最佳答案

List<string> breedingGroupsAndRoles = bgList
    .Where(bg => bg.Crop == cropName)
    .Select(bg => bg.Code)
    .ToList();

关于c# - 是否可以使用简单的LINQ进行此循环?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20435690/

10-16 19:02