Soenneker.Extensions.Enumerable 1.0.8

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.8                
NuGet\Install-Package Soenneker.Extensions.Enumerable -Version 1.0.8                
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.8" />                
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.8                
#r "nuget: Soenneker.Extensions.Enumerable, 1.0.8"                
#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.8

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

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
3.0.225 1,656 11/21/2024
3.0.224 5,318 11/20/2024
3.0.223 634 11/20/2024
3.0.222 1,091 11/20/2024
3.0.221 538 11/19/2024
3.0.220 5,508 11/19/2024
3.0.219 2,231 11/19/2024
3.0.218 66 11/19/2024
3.0.217 3,784 11/19/2024
3.0.216 60 11/19/2024
3.0.215 10,394 11/14/2024
3.0.214 1,140 11/14/2024
3.0.213 4,058 11/14/2024
3.0.212 944 11/14/2024
3.0.211 541 11/14/2024
3.0.210 4,296 11/14/2024
3.0.209 71 11/14/2024
3.0.208 3,408 11/14/2024
3.0.207 163 11/14/2024
2.1.206 11,016 11/13/2024
2.1.205 4,855 11/13/2024
2.1.204 11,954 11/9/2024
2.1.203 824 11/9/2024
2.1.202 2,135 11/9/2024
2.1.201 1,246 11/8/2024
2.1.200 1,041 11/8/2024
2.1.199 75 11/8/2024
2.1.198 1,874 11/8/2024
2.1.197 228 11/8/2024
2.1.196 4,595 11/8/2024
2.1.195 5,998 11/8/2024
2.1.194 13,163 11/1/2024
2.1.192 9,589 10/29/2024
2.1.191 10,340 10/28/2024
2.1.190 6,567 10/26/2024
2.1.189 8,941 10/22/2024
2.1.188 1,454 10/22/2024
2.1.187 1,038 10/22/2024
2.1.186 8,492 10/17/2024
2.1.185 6,181 10/15/2024
2.1.184 2,340 10/14/2024
2.1.183 6,839 10/11/2024
2.1.182 923 10/11/2024
2.1.181 542 10/11/2024
2.1.180 10,920 10/9/2024
2.1.179 896 10/8/2024
2.1.178 5,483 10/8/2024
2.1.177 826 10/8/2024
2.1.176 12,084 10/3/2024
2.1.175 3,700 10/3/2024
2.1.174 8,963 10/2/2024
2.1.173 2,691 10/2/2024
2.1.172 6,630 10/1/2024
2.1.171 1,769 10/1/2024
2.1.170 2,709 10/1/2024
2.1.169 7,578 9/29/2024
2.1.168 2,198 9/29/2024
2.1.167 1,603 9/29/2024
2.1.166 9,038 9/27/2024
2.1.165 5,252 9/27/2024
2.1.164 75 9/27/2024
2.1.163 277 9/27/2024
2.1.162 78 9/27/2024
2.1.161 7,888 9/26/2024
2.1.160 7,512 9/26/2024
2.1.159 6,916 9/26/2024
2.1.158 7,046 9/23/2024
2.1.157 3,258 9/23/2024
2.1.156 1,906 9/23/2024
2.1.155 2,004 9/23/2024
2.1.154 6,505 9/23/2024
2.1.153 710 9/23/2024
2.1.152 863 9/23/2024
2.1.151 72 9/23/2024
2.1.150 2,337 9/23/2024
2.1.149 11,734 9/17/2024
2.1.148 81 9/17/2024
2.1.147 402 9/17/2024
2.1.146 4,767 9/17/2024
2.1.145 4,149 9/17/2024
2.1.144 5,440 9/17/2024
2.1.143 88 9/17/2024
2.1.142 506 9/17/2024
2.1.141 1,203 9/17/2024
2.1.140 13,242 9/16/2024
2.1.139 7,477 9/12/2024
2.1.138 5,102 9/11/2024
2.1.137 3,062 9/11/2024
2.1.136 5,956 9/11/2024
2.1.135 4,871 9/11/2024
2.1.134 11,134 9/10/2024
2.1.133 2,329 9/10/2024
2.1.132 3,718 9/9/2024
2.1.131 4,088 9/9/2024
2.1.130 2,590 9/9/2024
2.1.129 1,226 9/9/2024
2.1.128 84 9/9/2024
2.1.127 91 9/9/2024
2.1.126 79 9/9/2024
2.1.125 16,771 9/6/2024
2.1.124 6,516 9/6/2024
2.1.123 3,360 9/5/2024
2.1.122 2,021 9/5/2024
2.1.121 4,102 9/5/2024
2.1.120 2,206 9/5/2024
2.1.119 78 9/5/2024
2.1.118 1,615 9/5/2024
2.1.117 5,879 9/5/2024
2.1.116 1,391 9/4/2024
2.1.115 12,047 9/3/2024
2.1.114 1,171 9/3/2024
2.1.113 4,917 9/3/2024
2.1.112 9,517 8/29/2024
2.1.111 6,703 8/26/2024
2.1.110 6,685 8/21/2024
2.1.109 3,805 8/21/2024
2.1.108 417 8/20/2024
2.1.107 4,717 8/20/2024
2.1.106 87 8/20/2024
2.1.105 4,788 8/20/2024
2.1.104 2,900 8/20/2024
2.1.103 9,035 8/15/2024
2.1.102 8,164 8/13/2024
2.1.101 7,808 8/6/2024
2.1.100 9,154 8/1/2024
2.1.99 543 8/1/2024
2.1.98 8,653 7/25/2024
2.1.97 1,044 7/25/2024
2.1.96 963 7/25/2024
2.1.95 623 7/24/2024
2.1.94 199 7/24/2024
2.1.93 8,979 7/20/2024
2.1.92 8,165 7/14/2024
2.1.91 2,210 7/14/2024
2.1.90 6,780 7/10/2024
2.1.89 212 7/10/2024
2.1.88 2,141 7/10/2024
2.1.87 2,025 7/10/2024
2.1.86 203 7/10/2024
2.1.85 189 7/10/2024
2.1.83 2,103 7/10/2024
2.1.82 3,206 7/9/2024
2.1.80 821 7/9/2024
2.1.79 1,240 7/9/2024
2.1.78 7,674 7/9/2024
2.1.77 3,025 7/9/2024
2.1.76 6,909 7/9/2024
2.1.75 99 7/9/2024
2.1.74 116 7/8/2024
2.1.73 96 7/8/2024
2.1.72 2,495 7/8/2024
2.1.71 83 7/8/2024
2.1.70 6,904 7/8/2024
2.1.69 2,255 7/7/2024
2.1.68 2,561 7/7/2024
2.1.67 658 7/7/2024
2.1.66 1,294 7/7/2024
2.1.65 3,011 7/7/2024
2.1.64 2,677 7/7/2024
2.1.63 95 7/7/2024
2.1.62 3,584 7/5/2024
2.1.61 72,647 5/25/2024
2.1.60 96 5/25/2024
2.1.59 508 5/25/2024
2.1.58 13,915 5/22/2024
2.1.57 100 5/22/2024
2.1.56 11,417 5/17/2024
2.1.55 15,858 4/30/2024
2.1.54 15,769 4/28/2024
2.1.53 105 4/28/2024
2.1.52 658 4/27/2024
2.1.51 95 4/27/2024
2.1.50 24,947 4/12/2024
2.1.49 1,339 4/12/2024
2.1.48 109 4/12/2024
2.1.47 36,849 3/18/2024
2.1.46 8,725 3/13/2024
2.1.45 2,255 3/13/2024
2.1.44 60,861 2/21/2024
2.1.43 2,719 2/21/2024
2.1.42 104 2/21/2024
2.1.41 21,676 2/16/2024
2.1.40 623 2/16/2024
2.1.39 23,733 2/9/2024
2.1.38 18,777 2/6/2024
2.1.37 113 2/6/2024
2.1.36 62,487 1/15/2024
2.1.35 817 1/15/2024
2.1.34 26,015 1/5/2024
2.1.33 2,432 1/5/2024
2.1.32 13,305 12/27/2023
2.1.31 1,317 12/27/2023
2.1.30 1,077 12/27/2023
2.1.29 7,809 12/25/2023
2.1.28 1,362 12/25/2023
2.1.27 671 12/25/2023
2.1.26 10,477 12/23/2023
2.1.25 123 12/23/2023
2.1.24 802 12/23/2023
2.1.23 20,547 12/9/2023
2.1.22 1,331 12/9/2023
2.1.21 242 12/9/2023
2.1.20 1,901 12/9/2023
2.1.19 10,775 12/4/2023
2.1.18 816 12/4/2023
2.1.17 5,418 11/26/2023
2.1.16 5,368 11/23/2023
2.1.15 333 11/23/2023
2.1.14 942 11/23/2023
2.1.13 9,371 11/19/2023
2.1.12 130 11/19/2023
2.1.11 1,188 11/18/2023
2.1.10 3,392 11/18/2023
2.1.9 1,934 11/18/2023
2.1.8 3,650 11/17/2023
2.1.7 1,066 11/17/2023
2.1.6 1,692 11/17/2023
2.1.5 870 11/17/2023
2.1.4 632 11/16/2023
2.1.3 176 11/16/2023
2.0.52 1,243 11/15/2023
2.0.51 2,123 11/15/2023
2.0.2 127 11/16/2023
2.0.1 133 11/16/2023
1.0.50 4,105 11/11/2023
1.0.49 117 11/11/2023
1.0.48 102 11/11/2023
1.0.47 1,331 11/9/2023
1.0.46 123 11/9/2023
1.0.45 5,182 11/6/2023
1.0.44 2,226 11/3/2023
1.0.43 1,810 11/2/2023
1.0.42 1,874 11/1/2023
1.0.41 7,480 10/18/2023
1.0.40 2,990 10/17/2023
1.0.39 1,236 10/16/2023
1.0.38 2,654 10/13/2023
1.0.37 147 10/13/2023
1.0.36 6,136 9/19/2023
1.0.35 2,032 9/18/2023
1.0.34 126 9/18/2023
1.0.33 7,653 8/30/2023
1.0.32 2,662 8/29/2023
1.0.31 4,147 8/24/2023
1.0.30 138 8/24/2023
1.0.29 4,327 8/17/2023
1.0.28 160 8/17/2023
1.0.27 8,015 8/7/2023
1.0.26 161 8/7/2023
1.0.25 7,964 7/10/2023
1.0.24 10,296 7/7/2023
1.0.23 157 7/7/2023
1.0.22 9,282 6/28/2023
1.0.21 44,276 5/24/2023
1.0.20 1,122 5/24/2023
1.0.19 398 5/23/2023
1.0.18 181 5/31/2023
1.0.17 2,732 5/23/2023
1.0.16 2,913 5/22/2023
1.0.15 5,936 5/17/2023
1.0.14 169 5/17/2023
1.0.13 5,569 4/28/2023
1.0.12 2,202 4/24/2023
1.0.11 953 4/21/2023
1.0.10 4,467 4/12/2023
1.0.9 1,059 4/11/2023
1.0.8 2,018 4/3/2023
1.0.7 223 4/3/2023
1.0.6 356 4/1/2023
1.0.5 1,999 3/23/2023
1.0.3 535 2/28/2023
1.0.2 438 2/16/2023