使用Linq </object1,object2>查询SortedList <object1,object2>

时间:2009-11-25 20:35:00

标签: c# linq sortedlist

我是Linq的初学者。我想知道,如果可以查询给定的Class1.Code,我得到匹配的Class2.Value。

class Class1()
{
    public string Code;
    ...
}

class Class2()
{
    public double Value;
    ...
}

SortedList<Class1, Class2>

感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

list.First(x => x.Key.Code == codeToSearch).Value

然而,这效率不高(O(n))。我想这不是解决问题的正确方法。如果您在大多数情况下按Code进行搜索,则应该将其设为SortedList<string, Class2>并将Code存储为关键字。

答案 1 :(得分:1)

double value = (from kv in SortedList
                where kv.Key.Code = "CodeI'mLookingFor"
                select kv.Value.Value).FirstOrDefault();

答案 2 :(得分:0)

SortedList&lt; Class1,Class2&gt; X;

写一种方法:

(来自x中的对  其中pair.Key.Code == matchingValue  选择pair.Value.Value)

其中matchingValue是您要搜索的Class1.Code。