• .NET Core EF Core(Entity Framework Core)去掉重复数据(distinct)


    1、去重获取单列数据的列表

    1) 使用Distinct()方法

    db.PageInfos.Select(p => p.Type).Distinct().ToList();

    2)使用GroupBy()方法

    db.PageInfos.GroupBy(p => p.Type).Select(p=>p.Key).ToList();

    2、去重获取Model数据的列表

    使用DistinctBy()扩展方法来实现,可以返回Model列表数据。

     public static class DistinctByClass
        {
            public static IEnumerable<TSource> DistinctBy<TSource, TKey>(this IEnumerable<TSource> source, Func<TSource, TKey> keySelector)
            {
                HashSet<TKey> seenKeys = new HashSet<TKey>();
                foreach (TSource element in source)
                {
                    if (seenKeys.Add(keySelector(element)))
                    {
                        yield return element;
                    }
                }
            }
        }
  • 相关阅读:
    句子
    Https
    SSH
    uCMDB
    snapshot与release
    Ansible
    .NET core webApi 使用JWT验证签名(转)
    .NET core 使用Swagger(转)
    微服务的4个设计原则和19个解决方案(转)
    .NET Core 使用RabbitMQ(转)
  • 原文地址:https://www.cnblogs.com/jiangyunfeng/p/12677800.html
Copyright © 2020-2023  润新知