比较字典值中对象的值

时间:2018-02-01 21:21:25

标签: .net vb.net linq

我有一个字典对象,其值是另一个对象。 (of string,Object)

我需要检查字典值对象的属性中是否存在值。我不认为我可以使用.ContainsValue因为我只需要比较属性而不是整个对象。

1 个答案:

答案 0 :(得分:0)

@koryakinp删除的答案基本上是正确的,但对于语言,例如

If myDictionary.Any(Function(kvp) kvp.Value.SomeProperty = someValue) Then
    'At least one item has a value where the SomeProperty property is equal to someValue.
End If

如果你需要知道有多少这样的物品:

Dim count = myDictionary.Count(Function(kvp) kvp.Value.SomeProperty = someValue)

请注意,如果您愿意,可以改为使用Values集合:

If myDictionary.Values.Any(Function(value) value.SomeProperty = someValue) Then
    'At least one item has a value where the SomeProperty property is equal to someValue.
End If

Dim count = myDictionary.Values.Count(Function(value) value.SomeProperty = someValue)