检查列表对象是否包含在另一个列表中

时间:2016-03-07 17:54:28

标签: c# asp.net-mvc visual-studio list

我希望我的标题正确 - 概述:我正在尝试创建一个输入复选框。我想显示所有项目&检查应该通过列表比较检查的那些。这是我的'破解'代码&我要去的地方:

List<ConsolStand> csr = ConsolStand.GetConsolStands();
List<PackUserSecurityGroup> sg = PackUserSecurityGroup.GetPackUserSecurityGroup(0, iGroupID);

foreach (ConsolStand a in csr)
{
    if (sg.Contains(a.CsrID))
    {
        <input type="checkbox" id="@("routeDesc_" + a.CsrDesc)" checked="checked" /> @a.CsrDesc <br />
    }
    else
    {
        <input type="checkbox" id="@("routeDesc_" + a.CsrDesc)" /> @a.CsrDesc <br />
    }
}

PackSecurityGroup只是一个列表对象(它将返回一列整数),我正在尝试将该列表与ConsolStand列表中的CsrID列进行比较。

1 个答案:

答案 0 :(得分:0)

听起来你说你的PackUserSecurityGroup有一些你要比较的ID属性?在这种情况下,您可以添加更改:

sg.Any(s => s.ID == a.CsrID)

{{1}}

(确保您也有“使用System.Linq”语句)。但是,用一个字符串替换你的sg列表会更有效,其中键是ID,或者只是一个已排序的ID列表。