Soenneker.Extensions.Enumerable 1.0.7

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Soenneker.Extensions.Enumerable --version 1.0.7                
NuGet\Install-Package Soenneker.Extensions.Enumerable -Version 1.0.7                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Soenneker.Extensions.Enumerable" Version="1.0.7" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Soenneker.Extensions.Enumerable --version 1.0.7                
#r "nuget: Soenneker.Extensions.Enumerable, 1.0.7"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Soenneker.Extensions.Enumerable as a Cake Addin
#addin nuget:?package=Soenneker.Extensions.Enumerable&version=1.0.7

// Install Soenneker.Extensions.Enumerable as a Cake Tool
#tool nuget:?package=Soenneker.Extensions.Enumerable&version=1.0.7                

alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

Soenneker.Extensions.Enumerable

A collection of helpful enumerable extension methods

Installation

Install-Package Soenneker.Extensions.Enumerable

Usage

IEnumerable should have IsNullOrEmpty() too

var populatedList = new List<string>{"foo", "bar", "foo"};

populatedList.IsNullOrEmpty() // false

populatedList.Populated() // true
populatedList.None() // false

One call checking for null and contains any elements

List<string>? nullList = null;

nullList.IsNullOrEmpty() // true
nullList.Populated() // false

Duplicate handling

var containsDuplicates = populatedList.ContainsDuplicates(); // true

var deduped = populatedList.RemoveDuplicates(); // {"foo", "bar"}

Recursive flattening

public class Node 
{
    public string Name {get; set;}
    public List<Node> Children {get; set;}
}

void Example()
{
    var node = new Node(){ Name = "Node1" };
    node.Children = new List()
    {
        new Node() 
        {
            Name = "Node2"
        }
    }

    List<Node>? children = node.Children.ToFlattenedFromRecursive(c => c.Children);

    // Results in flattened List:
    // { Node1, Node2 }
}
Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (9)

Showing the top 5 NuGet packages that depend on Soenneker.Extensions.Enumerable:

Package Downloads
Soenneker.Utils.SingletonDictionary

An externally initializing singleton dictionary that uses double-check asynchronous locking, with optional async and sync disposal

Soenneker.Utils.String

A utility library for useful String operations

Soenneker.Extensions.Enumerable.String

A collection of helpful enumerable string extension methods

Soenneker.Utils.Process

A utility library implementing useful process operations

Soenneker.Swashbuckle.Authentication

A middleware implementing basic authentication and RBAC support for Swashbuckle (Swagger)

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.1.194 4,536 11/1/2024
2.1.192 9,580 10/29/2024
2.1.191 10,333 10/28/2024
2.1.190 6,373 10/26/2024
2.1.189 8,331 10/22/2024
2.1.188 1,451 10/22/2024
2.1.187 1,034 10/22/2024
2.1.186 8,486 10/17/2024
2.1.185 6,175 10/15/2024
2.1.184 2,337 10/14/2024
2.1.183 6,835 10/11/2024
2.1.182 920 10/11/2024
2.1.181 539 10/11/2024
2.1.180 10,914 10/9/2024
2.1.179 891 10/8/2024
2.1.178 5,478 10/8/2024
2.1.177 821 10/8/2024
2.1.176 12,080 10/3/2024
2.1.175 3,695 10/3/2024
2.1.174 8,952 10/2/2024
2.1.173 2,685 10/2/2024
2.1.172 6,624 10/1/2024
2.1.171 1,763 10/1/2024
2.1.170 2,703 10/1/2024
2.1.169 7,574 9/29/2024
2.1.168 2,194 9/29/2024
2.1.167 1,601 9/29/2024
2.1.166 8,959 9/27/2024
2.1.165 5,249 9/27/2024
2.1.164 72 9/27/2024
2.1.163 274 9/27/2024
2.1.162 75 9/27/2024
2.1.161 7,875 9/26/2024
2.1.160 7,504 9/26/2024
2.1.159 6,908 9/26/2024
2.1.158 7,042 9/23/2024
2.1.157 3,256 9/23/2024
2.1.156 1,903 9/23/2024
2.1.155 2,001 9/23/2024
2.1.154 6,501 9/23/2024
2.1.153 707 9/23/2024
2.1.152 860 9/23/2024
2.1.151 69 9/23/2024
2.1.150 2,334 9/23/2024
2.1.149 11,714 9/17/2024
2.1.148 78 9/17/2024
2.1.147 400 9/17/2024
2.1.146 4,751 9/17/2024
2.1.145 4,147 9/17/2024
2.1.144 5,438 9/17/2024
2.1.143 85 9/17/2024
2.1.142 504 9/17/2024
2.1.141 1,196 9/17/2024
2.1.140 13,043 9/16/2024
2.1.139 7,474 9/12/2024
2.1.138 5,100 9/11/2024
2.1.137 3,060 9/11/2024
2.1.136 5,954 9/11/2024
2.1.135 4,869 9/11/2024
2.1.134 11,125 9/10/2024
2.1.133 2,326 9/10/2024
2.1.132 3,715 9/9/2024
2.1.131 4,085 9/9/2024
2.1.130 2,587 9/9/2024
2.1.129 1,222 9/9/2024
2.1.128 80 9/9/2024
2.1.127 87 9/9/2024
2.1.126 75 9/9/2024
2.1.125 16,768 9/6/2024
2.1.124 6,506 9/6/2024
2.1.123 3,351 9/5/2024
2.1.122 2,017 9/5/2024
2.1.121 4,098 9/5/2024
2.1.120 2,202 9/5/2024
2.1.119 74 9/5/2024
2.1.118 1,611 9/5/2024
2.1.117 5,875 9/5/2024
2.1.116 1,388 9/4/2024
2.1.115 12,026 9/3/2024
2.1.114 1,167 9/3/2024
2.1.113 4,914 9/3/2024
2.1.112 9,514 8/29/2024
2.1.111 6,695 8/26/2024
2.1.110 6,679 8/21/2024
2.1.109 3,802 8/21/2024
2.1.108 415 8/20/2024
2.1.107 4,715 8/20/2024
2.1.106 85 8/20/2024
2.1.105 4,786 8/20/2024
2.1.104 2,898 8/20/2024
2.1.103 9,033 8/15/2024
2.1.102 8,162 8/13/2024
2.1.101 7,783 8/6/2024
2.1.100 9,152 8/1/2024
2.1.99 541 8/1/2024
2.1.98 8,650 7/25/2024
2.1.97 1,041 7/25/2024
2.1.96 960 7/25/2024
2.1.95 620 7/24/2024
2.1.94 196 7/24/2024
2.1.93 8,899 7/20/2024
2.1.92 8,163 7/14/2024
2.1.91 2,207 7/14/2024
2.1.90 6,778 7/10/2024
2.1.89 210 7/10/2024
2.1.88 2,139 7/10/2024
2.1.87 2,023 7/10/2024
2.1.86 200 7/10/2024
2.1.85 187 7/10/2024
2.1.83 2,101 7/10/2024
2.1.82 3,204 7/9/2024
2.1.80 817 7/9/2024
2.1.79 1,238 7/9/2024
2.1.78 7,672 7/9/2024
2.1.77 3,023 7/9/2024
2.1.76 6,326 7/9/2024
2.1.75 95 7/9/2024
2.1.74 114 7/8/2024
2.1.73 92 7/8/2024
2.1.72 2,491 7/8/2024
2.1.71 81 7/8/2024
2.1.70 6,902 7/8/2024
2.1.69 2,253 7/7/2024
2.1.68 2,559 7/7/2024
2.1.67 656 7/7/2024
2.1.66 1,292 7/7/2024
2.1.65 3,009 7/7/2024
2.1.64 2,675 7/7/2024
2.1.63 93 7/7/2024
2.1.62 3,582 7/5/2024
2.1.61 72,612 5/25/2024
2.1.60 94 5/25/2024
2.1.59 506 5/25/2024
2.1.58 13,907 5/22/2024
2.1.57 98 5/22/2024
2.1.56 11,399 5/17/2024
2.1.55 15,853 4/30/2024
2.1.54 15,747 4/28/2024
2.1.53 102 4/28/2024
2.1.52 655 4/27/2024
2.1.51 93 4/27/2024
2.1.50 24,937 4/12/2024
2.1.49 1,336 4/12/2024
2.1.48 102 4/12/2024
2.1.47 36,721 3/18/2024
2.1.46 8,712 3/13/2024
2.1.45 2,250 3/13/2024
2.1.44 60,833 2/21/2024
2.1.43 2,715 2/21/2024
2.1.42 101 2/21/2024
2.1.41 21,669 2/16/2024
2.1.40 620 2/16/2024
2.1.39 23,713 2/9/2024
2.1.38 18,769 2/6/2024
2.1.37 108 2/6/2024
2.1.36 62,456 1/15/2024
2.1.35 814 1/15/2024
2.1.34 26,002 1/5/2024
2.1.33 2,425 1/5/2024
2.1.32 13,294 12/27/2023
2.1.31 1,314 12/27/2023
2.1.30 1,074 12/27/2023
2.1.29 7,806 12/25/2023
2.1.28 1,357 12/25/2023
2.1.27 668 12/25/2023
2.1.26 10,469 12/23/2023
2.1.25 121 12/23/2023
2.1.24 797 12/23/2023
2.1.23 20,537 12/9/2023
2.1.22 1,328 12/9/2023
2.1.21 239 12/9/2023
2.1.20 1,893 12/9/2023
2.1.19 10,768 12/4/2023
2.1.18 813 12/4/2023
2.1.17 5,408 11/26/2023
2.1.16 5,365 11/23/2023
2.1.15 330 11/23/2023
2.1.14 939 11/23/2023
2.1.13 9,368 11/19/2023
2.1.12 127 11/19/2023
2.1.11 1,183 11/18/2023
2.1.10 3,389 11/18/2023
2.1.9 1,931 11/18/2023
2.1.8 3,645 11/17/2023
2.1.7 1,063 11/17/2023
2.1.6 1,689 11/17/2023
2.1.5 865 11/17/2023
2.1.4 629 11/16/2023
2.1.3 173 11/16/2023
2.0.52 1,240 11/15/2023
2.0.51 2,120 11/15/2023
2.0.2 124 11/16/2023
2.0.1 131 11/16/2023
1.0.50 4,098 11/11/2023
1.0.49 114 11/11/2023
1.0.48 99 11/11/2023
1.0.47 1,328 11/9/2023
1.0.46 120 11/9/2023
1.0.45 5,171 11/6/2023
1.0.44 2,223 11/3/2023
1.0.43 1,807 11/2/2023
1.0.42 1,872 11/1/2023
1.0.41 7,470 10/18/2023
1.0.40 2,988 10/17/2023
1.0.39 1,234 10/16/2023
1.0.38 2,649 10/13/2023
1.0.37 145 10/13/2023
1.0.36 6,124 9/19/2023
1.0.35 2,029 9/18/2023
1.0.34 124 9/18/2023
1.0.33 7,650 8/30/2023
1.0.32 2,660 8/29/2023
1.0.31 4,139 8/24/2023
1.0.30 137 8/24/2023
1.0.29 4,325 8/17/2023
1.0.28 155 8/17/2023
1.0.27 8,005 8/7/2023
1.0.26 158 8/7/2023
1.0.25 7,961 7/10/2023
1.0.24 10,293 7/7/2023
1.0.23 155 7/7/2023
1.0.22 9,271 6/28/2023
1.0.21 44,249 5/24/2023
1.0.20 1,119 5/24/2023
1.0.19 395 5/23/2023
1.0.18 178 5/31/2023
1.0.17 2,727 5/23/2023
1.0.16 2,910 5/22/2023
1.0.15 5,933 5/17/2023
1.0.14 166 5/17/2023
1.0.13 5,567 4/28/2023
1.0.12 2,199 4/24/2023
1.0.11 950 4/21/2023
1.0.10 4,464 4/12/2023
1.0.9 1,056 4/11/2023
1.0.8 2,015 4/3/2023
1.0.7 220 4/3/2023
1.0.6 353 4/1/2023
1.0.5 1,996 3/23/2023
1.0.3 531 2/28/2023
1.0.2 433 2/16/2023