我正试图从 Objects 中,特别是在字典中,围绕 LINQ,但失败得很厉害。
我在 SO 的几个线程中看到了这种语法:
var items = (from pair in m_taskDictionary
from s in pair.Value
s).Distinct().ToList();
但是当我尝试编译它时,我收到一个语法错误:源类型为“System.Collections.Generic.Dictionary”的查询表达式中的后续 from 子句中不允许使用“OperationsPlannerData.OperationsTaskLabeledData”类型的表达式。对“SelectMany”的调用中的类型推断失败。
怎么了?我的 Visual Studio 是否太旧?(男孩不会让我感到惊讶。)我正在使用 VS 2008。
这是推荐此用法的线程之一的链接:
简而言之,这是我要解决的问题:我想在字典中找到 Value 对象中的特定字段与给定字符串匹配的第一项。我已经有了字典,以整数为键,在我的应用程序中用于一个目的,所以我宁愿只使用那个字典。List<KeyValuePair<string, OperationsTaskLabeledData>>
SO中的各种线程建议为此使用对象。我可以很容易地创建该对象,但我也不知道如何搜索该结构。