c# - 从 IGrouping 中检索所有值

标签 c# linq list fileinfo igrouping

我目前有:

UIEnumerable <IGrouping<PortableKey, FileInfo>> 

从此代码:

var queryDupFiles = from file in fileList
    group file by new PortableKey { Name = file.Name, Length = file.Length } 
    into g
    where g.Count() > 1
    select g;

PortableKey 的代码是:

    public class PortableKey
    {
        public string Name { get; set; }
        public long Length { get; set; }
    }

基本上过滤并抓取所有重复的文件。我如何获取它以便以这种方式获得所有 FileInfo?

List<FileInfo> list

最佳答案

您需要使用额外的 from 子句:

from f in g
select f

这会转换为 .GroupBy(...).SelectMany(g => g)

关于c# - 从 IGrouping 中检索所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11766001/

相关文章:

c# - 使用未知但相似对象的哈希表 (C#)

c# - 如何仅对列表中的一部分项目分配属性?

c# - Where() 的意外结果

java - 是否可以将小部件存储在列表/数组中?

javascript - HttpRequest 不会在冗长的请求上超时

C# 我有 50 多个 else if 卡片语句,有没有办法让它更短或一次性完成?

c# - 与 Linq xxxOrDefault 的结果进行比较时,是否使用 default(string) 是一种常见的习惯用法?

c# - 大数字的 IsNumeric Helper 方法

java - 如何编码这个特定的方法?

ruby-on-rails - 使用 CanCan 将索引页面上的 View 限制为 user_id