列出多个字段的分组

时间:2014-03-06 09:46:57

标签: c# list

我有一个包含5个字段的类型列表。从这个列表中我希望检索它分组IssueType&的值。 ID在一起。因此,在下面的表格中,问题类型ABC& Id = 2仅在我的新列表中出现一次。我该怎么做?

我还应该指出,IssueType是一个枚举。不确定这是否有任何区别

IssueType    Id
ABC          1
ABC          2
ABC          2
ABC          3
XZY          4
XYZ          1

我尝试在LINQ中使用groupby。

List<IssueLog> uniqueErrorLog = ErrorLog.GroupBy(err => err.IssueType, err => err.Id).Select(err => err).ToList();

更新

好的,我已经尝试了以下这一行。

 var uniqueErrorLog = ErrorLog.GroupBy(iss => new { iss.IssueType, iss.Id });
然后我检查输出,分组似乎没有任何区别。回到我的表格示例,当我只想要一个时,我仍然可以看到输出ID = 2的两个ABC。

 foreach (var issueType in uniqueErrorLog)
            {
                foreach(var issue in issueType)
                    Console.WriteLine(issue.IssueType + "," + issue.Id);                    
            }

1 个答案:

答案 0 :(得分:-1)

myList.GroupBy(e => string.Format("{0}_{1}", e.IssueType, e.Id))