从c#列表中获取特定的元素

本文关键字:元素 获取 列表 | 更新日期: 2023-09-27 18:16:47

我想知道是否有任何方法从列表中获取特定元素,例如

//如果A.Nr=15直接得到b.Nr=15而不是b.Nr查找1,2,3,…

请参阅下面的代码片段,注释解释了我要做的事情。我希望任何人都能帮助我。

    private void btnFind_Click_1(object sender, EventArgs e)
    {
        List<Excel> lrez = new List<Excel>();
        var query = from li in listIndex
                    where li.Value == int.Parse(txtValue.Text)
                    select li;
        List<Excel> lresult = new List<Excel>();
        lresult = query.ToList();
        LinkedList<LinkList> linkedList = new LinkedList<LinkList>();
        for (int i = 0; i < lrsult.Count; i++)
        {
            LinkList a = new LinkList();
            Node A = new Node();
            A.Data = lresult[i].Nr;
            A.Nr = lresult[i].Nr;
            a.AddNode(A);
            linkedList.AddLast(a);
            Excel ex = lista.FirstOrDefault(b => b.Nr == A.Nr);
    //if A.Nr=15 get directly b.Nr=15 and not b.Nr to look 1,2,3,...                
    lrez.Add(ex);
        }
        dgvRez.AutoGenerateColumns = false;
        dgvRez.DataSource = lrezultati;
}

从c#列表中获取特定的元素

尝试使用LINQ:

Excel result = lista.SingleOrDefault(e => e.Nr == 15);

如果找不到这样的项,将返回null。