我有一个字典fooDictionary<string, MyObject>
.
我正在过滤fooDictionary
以仅获取具有特定属性值的 MyObject。
fooDictionary.Values.Where(x=>x.Boo==false).ToList().ExtensionMethod();
//(扩展方法是我为列表制作的扩展方法(用于更多过滤((PS:扩展方法仅返回 1x MyObject(( 但我也想获取已经过滤的MyObject的密钥。我该怎么做?
当您使用fooDictionary.Values.Where(...)
对字典值进行操作时,您将无法再访问这些键。
而是将查询更改为:
fooDictionary.Where(x => x.Value.Boo == false).ToList().ExtensionMethod();
在ToList()
调用之后,这应该会产生一个List<KeyValuePair<string, MyObject>>
从而维护密钥和相应的值。