简体   繁体   English

通过LINQ在C#中的类的数据成员查询字典

[英]query a dictionary by a data member of a class in C# by LINQ

I am working on C# Win 7. 我正在研究C#Win 7。

I need to get a query from a dictionary. 我需要从字典中获取查询。

Dictionary<string, myClass> myDict;

public class myClass
{
   public int myId;
   public Dictionary<string, Dictionary<string, string[]>> Dict1;
}

var query = from myStr in myDict group by myStr.value.myId into g select g;

I got error: 我收到了错误:

Cannot convert lambda expression to type keyValuePair becasue it is not a delegate type. 无法将lambda表达式转换为键入keyValuePair,因为它不是委托类型。

Any help would be appreciated. 任何帮助,将不胜感激。

var query = from myStr in myDict 
            group myStr by myStr.Value.myId into g // you missed myStr here
            select g;

That is required by syntax of query expressions (C# Specification 7.16): 这是查询表达式的语法所必需的(C#规范7.16):

 group-clause: group expression by expression 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM