Soenneker.Extensions.Enumerable 1.0.6

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

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

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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (7)

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.Extensions.Enumerable.String

A collection of helpful enumerable string extension methods

Soenneker.Utils.String

A utility library for useful String operations

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.448 1,243 2/14/2025
3.0.447 652 2/14/2025
3.0.446 1,859 2/13/2025
3.0.445 2,340 2/13/2025
3.0.444 2,716 2/12/2025
3.0.443 1,031 2/12/2025
3.0.442 451 2/12/2025
3.0.441 1,282 2/12/2025
3.0.440 477 2/12/2025
3.0.439 289 2/11/2025
3.0.438 5,658 2/11/2025
3.0.437 2,020 2/11/2025
3.0.436 274 2/11/2025
3.0.435 2,135 2/10/2025
3.0.434 66 2/10/2025
3.0.433 1,393 2/10/2025
3.0.432 65 2/10/2025
3.0.431 11,666 2/9/2025
3.0.430 7,178 2/9/2025
3.0.429 312 2/9/2025
3.0.428 232 2/8/2025
3.0.427 176 2/8/2025
3.0.426 232 2/8/2025
3.0.425 8,146 2/8/2025
3.0.424 2,674 2/7/2025
3.0.423 1,873 2/7/2025
3.0.422 2,418 2/7/2025
3.0.421 66 2/7/2025
3.0.420 364 2/7/2025
3.0.419 72 2/7/2025
3.0.418 1,874 2/7/2025
3.0.417 56 2/7/2025
3.0.416 13,086 2/7/2025
3.0.415 5,114 2/5/2025
3.0.414 769 2/5/2025
3.0.413 1,125 2/5/2025
3.0.412 212 2/5/2025
3.0.411 2,449 2/5/2025
3.0.410 5,302 2/5/2025
3.0.409 10,454 1/28/2025
3.0.408 656 1/28/2025
3.0.407 176 1/28/2025
3.0.406 2,057 1/28/2025
3.0.405 4,302 1/27/2025
3.0.404 1,225 1/27/2025
3.0.403 61 1/27/2025
3.0.402 4,413 1/27/2025
3.0.401 58 1/27/2025
3.0.400 4,969 1/26/2025
3.0.399 1,022 1/26/2025
3.0.398 782 1/26/2025
3.0.397 383 1/26/2025
3.0.396 202 1/26/2025
3.0.395 2,149 1/25/2025
3.0.394 4,938 1/25/2025
3.0.393 3,284 1/25/2025
3.0.392 329 1/25/2025
3.0.391 6,771 1/24/2025
3.0.390 894 1/24/2025
3.0.389 1,684 1/24/2025
3.0.388 2,677 1/24/2025
3.0.387 673 1/23/2025
3.0.386 858 1/23/2025
3.0.385 106 1/23/2025
3.0.384 7,701 1/22/2025
3.0.383 1,183 1/21/2025
3.0.382 334 1/21/2025
3.0.381 1,150 1/21/2025
3.0.380 1,116 1/21/2025
3.0.379 1,289 1/21/2025
3.0.378 980 1/21/2025
3.0.377 1,310 1/21/2025
3.0.376 72 1/21/2025
3.0.375 6,095 1/21/2025
3.0.374 1,711 1/21/2025
3.0.373 1,456 1/21/2025
3.0.372 2,602 1/21/2025
3.0.371 152 1/20/2025
3.0.370 6,897 1/20/2025
3.0.369 223 1/20/2025
3.0.368 1,401 1/20/2025
3.0.367 68 1/20/2025
3.0.366 1,334 1/20/2025
3.0.365 82 1/20/2025
3.0.364 4,180 1/19/2025
3.0.363 6,575 1/19/2025
3.0.362 6,382 1/19/2025
3.0.361 2,151 1/19/2025
3.0.360 603 1/19/2025
3.0.359 3,600 1/18/2025
3.0.358 110 1/18/2025
3.0.357 3,503 1/18/2025
3.0.356 244 1/18/2025
3.0.355 985 1/18/2025
3.0.354 6,342 1/17/2025
3.0.353 112 1/17/2025
3.0.352 8,256 1/16/2025
3.0.351 4,538 1/16/2025
3.0.350 818 1/16/2025
3.0.349 5,104 1/15/2025
3.0.348 4,374 1/15/2025
3.0.347 3,700 1/15/2025
3.0.346 3,896 1/15/2025
3.0.345 2,279 1/15/2025
3.0.344 3,029 1/15/2025
3.0.343 779 1/15/2025
3.0.342 2,402 1/14/2025
3.0.341 330 1/14/2025
3.0.340 74 1/14/2025
3.0.339 3,151 1/14/2025
3.0.338 602 1/14/2025
3.0.337 46 1/14/2025
3.0.336 781 1/14/2025
3.0.335 214 1/14/2025
3.0.334 5,170 1/13/2025
3.0.333 1,317 1/13/2025
3.0.332 2,654 1/13/2025
3.0.331 5,630 1/11/2025
3.0.330 2,253 1/11/2025
3.0.329 2,530 1/10/2025
3.0.328 5,092 1/10/2025
3.0.327 86 1/10/2025
3.0.326 418 1/10/2025
3.0.325 79 1/10/2025
3.0.324 84 1/10/2025
3.0.323 8,070 1/3/2025
3.0.322 934 1/3/2025
3.0.321 1,198 1/3/2025
3.0.320 385 1/3/2025
3.0.319 1,340 1/3/2025
3.0.318 3,102 1/2/2025
3.0.317 98 1/2/2025
3.0.316 2,110 1/2/2025
3.0.315 101 1/2/2025
3.0.314 2,869 1/2/2025
3.0.313 100 1/2/2025
3.0.312 9,500 1/1/2025
3.0.311 97 1/1/2025
3.0.310 148 12/31/2024
3.0.309 104 12/31/2024
3.0.308 3,404 12/31/2024
3.0.307 98 12/31/2024
3.0.306 175 12/31/2024
3.0.305 659 12/31/2024
3.0.304 104 12/31/2024
3.0.303 1,056 12/31/2024
3.0.302 369 12/31/2024
3.0.301 6,343 12/31/2024
3.0.300 4,456 12/31/2024
3.0.299 1,017 12/31/2024
3.0.298 3,257 12/31/2024
3.0.297 2,470 12/31/2024
3.0.296 94 12/31/2024
3.0.295 97 12/31/2024
3.0.294 11,458 12/28/2024
3.0.293 1,933 12/28/2024
3.0.292 1,095 12/28/2024
3.0.291 1,321 12/27/2024
3.0.290 8,454 12/24/2024
3.0.289 1,818 12/24/2024
3.0.288 1,771 12/24/2024
3.0.287 2,496 12/24/2024
3.0.286 2,673 12/24/2024
3.0.285 2,110 12/24/2024
3.0.284 1,738 12/24/2024
3.0.283 1,375 12/23/2024
3.0.282 2,918 12/23/2024
3.0.281 3,354 12/23/2024
3.0.280 1,313 12/23/2024
3.0.279 3,772 12/23/2024
3.0.278 282 12/23/2024
3.0.277 3,598 12/22/2024
3.0.276 5,720 12/22/2024
3.0.275 5,736 12/22/2024
3.0.274 7,773 12/21/2024
3.0.273 437 12/21/2024
3.0.272 3,805 12/21/2024
3.0.271 4,931 12/21/2024
3.0.270 1,051 12/21/2024
3.0.269 5,901 12/20/2024
3.0.268 11,558 12/18/2024
3.0.267 139 12/18/2024
3.0.266 7,542 12/17/2024
3.0.265 6,113 12/17/2024
3.0.264 357 12/16/2024
3.0.263 1,087 12/16/2024
3.0.262 8,130 12/10/2024
3.0.261 2,246 12/9/2024
3.0.260 3,681 12/9/2024
3.0.259 2,498 12/9/2024
3.0.258 6,995 12/6/2024
3.0.257 1,313 12/6/2024
3.0.256 2,291 12/6/2024
3.0.255 7,115 12/6/2024
3.0.254 191 12/6/2024
3.0.253 328 12/6/2024
3.0.252 991 12/6/2024
3.0.251 5,647 12/6/2024
3.0.250 116 12/6/2024
3.0.249 111 12/6/2024
3.0.248 4,476 12/5/2024
3.0.247 4,466 12/5/2024
3.0.246 3,414 12/5/2024
3.0.245 4,074 12/5/2024
3.0.244 580 12/5/2024
3.0.243 501 12/5/2024
3.0.242 5,168 12/4/2024
3.0.241 466 12/4/2024
3.0.240 1,116 12/4/2024
3.0.239 3,595 12/4/2024
3.0.238 3,785 12/3/2024
3.0.237 2,836 12/3/2024
3.0.236 3,603 12/3/2024
3.0.235 3,405 12/3/2024
3.0.234 4,701 12/2/2024
3.0.233 3,866 12/2/2024
3.0.232 2,370 12/2/2024
3.0.231 421 12/2/2024
3.0.230 4,286 12/1/2024
3.0.229 659 12/1/2024
3.0.228 3,137 12/1/2024
3.0.227 4,079 12/1/2024
3.0.226 4,282 11/29/2024
3.0.225 6,569 11/21/2024
3.0.224 6,181 11/20/2024
3.0.223 657 11/20/2024
3.0.222 1,137 11/20/2024
3.0.221 561 11/19/2024
3.0.220 5,665 11/19/2024
3.0.219 2,309 11/19/2024
3.0.218 88 11/19/2024
3.0.217 3,816 11/19/2024
3.0.216 78 11/19/2024
3.0.215 10,565 11/14/2024
3.0.214 1,160 11/14/2024
3.0.213 4,088 11/14/2024
3.0.212 966 11/14/2024
3.0.211 563 11/14/2024
3.0.210 4,326 11/14/2024
3.0.209 95 11/14/2024
3.0.208 3,432 11/14/2024
3.0.207 187 11/14/2024
2.1.206 11,870 11/13/2024
2.1.205 4,929 11/13/2024
2.1.204 12,103 11/9/2024
2.1.203 842 11/9/2024
2.1.202 2,154 11/9/2024
2.1.201 1,266 11/8/2024
2.1.200 1,063 11/8/2024
2.1.199 91 11/8/2024
2.1.198 1,894 11/8/2024
2.1.197 246 11/8/2024
2.1.196 4,613 11/8/2024
2.1.195 6,014 11/8/2024
2.1.194 13,245 11/1/2024
2.1.192 9,627 10/29/2024
2.1.191 10,363 10/28/2024
2.1.190 6,586 10/26/2024
2.1.189 9,833 10/22/2024
2.1.188 1,474 10/22/2024
2.1.187 1,053 10/22/2024
2.1.186 8,518 10/17/2024
2.1.185 6,198 10/15/2024
2.1.184 2,353 10/14/2024
2.1.183 6,857 10/11/2024
2.1.182 938 10/11/2024
2.1.181 549 10/11/2024
2.1.180 10,953 10/9/2024
2.1.179 905 10/8/2024
2.1.178 5,507 10/8/2024
2.1.177 838 10/8/2024
2.1.176 12,110 10/3/2024
2.1.175 3,719 10/3/2024
2.1.174 8,998 10/2/2024
2.1.173 2,710 10/2/2024
2.1.172 6,644 10/1/2024
2.1.171 1,778 10/1/2024
2.1.170 2,725 10/1/2024
2.1.169 7,646 9/29/2024
2.1.168 2,207 9/29/2024
2.1.167 1,613 9/29/2024
2.1.166 9,290 9/27/2024
2.1.165 5,263 9/27/2024
2.1.164 84 9/27/2024
2.1.163 285 9/27/2024
2.1.162 87 9/27/2024
2.1.161 7,908 9/26/2024
2.1.160 7,555 9/26/2024
2.1.159 6,942 9/26/2024
2.1.158 7,087 9/23/2024
2.1.157 3,277 9/23/2024
2.1.156 1,916 9/23/2024
2.1.155 2,018 9/23/2024
2.1.154 6,519 9/23/2024
2.1.153 719 9/23/2024
2.1.152 872 9/23/2024
2.1.151 81 9/23/2024
2.1.150 2,348 9/23/2024
2.1.149 11,801 9/17/2024
2.1.148 90 9/17/2024
2.1.147 411 9/17/2024
2.1.146 4,813 9/17/2024
2.1.145 4,163 9/17/2024
2.1.144 5,463 9/17/2024
2.1.143 98 9/17/2024
2.1.142 516 9/17/2024
2.1.141 1,218 9/17/2024
2.1.140 13,349 9/16/2024
2.1.139 7,525 9/12/2024
2.1.138 5,115 9/11/2024
2.1.137 3,070 9/11/2024
2.1.136 5,967 9/11/2024
2.1.135 4,897 9/11/2024
2.1.134 11,163 9/10/2024
2.1.133 2,337 9/10/2024
2.1.132 3,728 9/9/2024
2.1.131 4,099 9/9/2024
2.1.130 2,600 9/9/2024
2.1.129 1,234 9/9/2024
2.1.128 91 9/9/2024
2.1.127 100 9/9/2024
2.1.126 86 9/9/2024
2.1.125 16,786 9/6/2024
2.1.124 6,534 9/6/2024
2.1.123 3,374 9/5/2024
2.1.122 2,031 9/5/2024
2.1.121 4,118 9/5/2024
2.1.120 2,211 9/5/2024
2.1.119 86 9/5/2024
2.1.118 1,623 9/5/2024
2.1.117 5,886 9/5/2024
2.1.116 1,398 9/4/2024
2.1.115 12,070 9/3/2024
2.1.114 1,184 9/3/2024
2.1.113 4,924 9/3/2024
2.1.112 9,532 8/29/2024
2.1.111 6,741 8/26/2024
2.1.110 6,692 8/21/2024
2.1.109 3,812 8/21/2024
2.1.108 432 8/20/2024
2.1.107 4,724 8/20/2024
2.1.106 97 8/20/2024
2.1.105 4,802 8/20/2024
2.1.104 2,908 8/20/2024
2.1.103 9,047 8/15/2024
2.1.102 8,188 8/13/2024
2.1.101 7,826 8/6/2024
2.1.100 9,167 8/1/2024
2.1.99 555 8/1/2024
2.1.98 8,665 7/25/2024
2.1.97 1,052 7/25/2024
2.1.96 972 7/25/2024
2.1.95 631 7/24/2024
2.1.94 204 7/24/2024
2.1.93 9,266 7/20/2024
2.1.92 8,188 7/14/2024
2.1.91 2,233 7/14/2024
2.1.90 6,812 7/10/2024
2.1.89 222 7/10/2024
2.1.88 2,151 7/10/2024
2.1.87 2,041 7/10/2024
2.1.86 215 7/10/2024
2.1.85 216 7/10/2024
2.1.83 2,120 7/10/2024
2.1.82 3,216 7/9/2024
2.1.80 829 7/9/2024
2.1.79 1,250 7/9/2024
2.1.78 7,694 7/9/2024
2.1.77 3,048 7/9/2024
2.1.76 8,913 7/9/2024
2.1.75 107 7/9/2024
2.1.74 124 7/8/2024
2.1.73 106 7/8/2024
2.1.72 2,503 7/8/2024
2.1.71 91 7/8/2024
2.1.70 6,920 7/8/2024
2.1.69 2,266 7/7/2024
2.1.68 2,573 7/7/2024
2.1.67 667 7/7/2024
2.1.66 1,314 7/7/2024
2.1.65 3,020 7/7/2024
2.1.64 2,698 7/7/2024
2.1.63 105 7/7/2024
2.1.62 3,593 7/5/2024
2.1.61 72,874 5/25/2024
2.1.60 104 5/25/2024
2.1.59 519 5/25/2024
2.1.58 13,946 5/22/2024
2.1.57 108 5/22/2024
2.1.56 11,454 5/17/2024
2.1.55 15,864 4/30/2024
2.1.54 15,839 4/28/2024
2.1.53 109 4/28/2024
2.1.52 668 4/27/2024
2.1.51 99 4/27/2024
2.1.50 24,966 4/12/2024
2.1.49 1,349 4/12/2024
2.1.48 115 4/12/2024
2.1.47 37,476 3/18/2024
2.1.46 8,746 3/13/2024
2.1.45 2,266 3/13/2024
2.1.44 60,990 2/21/2024
2.1.43 2,729 2/21/2024
2.1.42 109 2/21/2024
2.1.41 21,748 2/16/2024
2.1.40 631 2/16/2024
2.1.39 23,799 2/9/2024
2.1.38 18,858 2/6/2024
2.1.37 117 2/6/2024
2.1.36 62,634 1/15/2024
2.1.35 822 1/15/2024
2.1.34 26,067 1/5/2024
2.1.33 2,437 1/5/2024
2.1.32 13,329 12/27/2023
2.1.31 1,324 12/27/2023
2.1.30 1,083 12/27/2023
2.1.29 7,818 12/25/2023
2.1.28 1,373 12/25/2023
2.1.27 678 12/25/2023
2.1.26 10,486 12/23/2023
2.1.25 129 12/23/2023
2.1.24 807 12/23/2023
2.1.23 20,634 12/9/2023
2.1.22 1,335 12/9/2023
2.1.21 246 12/9/2023
2.1.20 1,917 12/9/2023
2.1.19 10,818 12/4/2023
2.1.18 820 12/4/2023
2.1.17 5,434 11/26/2023
2.1.16 5,387 11/23/2023
2.1.15 340 11/23/2023
2.1.14 953 11/23/2023
2.1.13 9,390 11/19/2023
2.1.12 136 11/19/2023
2.1.11 1,193 11/18/2023
2.1.10 3,400 11/18/2023
2.1.9 1,940 11/18/2023
2.1.8 3,664 11/17/2023
2.1.7 1,072 11/17/2023
2.1.6 1,705 11/17/2023
2.1.5 874 11/17/2023
2.1.4 638 11/16/2023
2.1.3 182 11/16/2023
2.0.52 1,247 11/15/2023
2.0.51 2,133 11/15/2023
2.0.2 133 11/16/2023
2.0.1 139 11/16/2023
1.0.50 4,109 11/11/2023
1.0.49 121 11/11/2023
1.0.48 106 11/11/2023
1.0.47 1,337 11/9/2023
1.0.46 128 11/9/2023
1.0.45 5,199 11/6/2023
1.0.44 2,230 11/3/2023
1.0.43 1,814 11/2/2023
1.0.42 1,890 11/1/2023
1.0.41 7,485 10/18/2023
1.0.40 3,001 10/17/2023
1.0.39 1,240 10/16/2023
1.0.38 2,658 10/13/2023
1.0.37 156 10/13/2023
1.0.36 6,154 9/19/2023
1.0.35 2,049 9/18/2023
1.0.34 130 9/18/2023
1.0.33 7,664 8/30/2023
1.0.32 2,687 8/29/2023
1.0.31 4,151 8/24/2023
1.0.30 142 8/24/2023
1.0.29 4,331 8/17/2023
1.0.28 164 8/17/2023
1.0.27 8,029 8/7/2023
1.0.26 166 8/7/2023
1.0.25 7,976 7/10/2023
1.0.24 10,327 7/7/2023
1.0.23 161 7/7/2023
1.0.22 9,293 6/28/2023
1.0.21 44,330 5/24/2023
1.0.20 1,126 5/24/2023
1.0.19 404 5/23/2023
1.0.18 185 5/31/2023
1.0.17 2,743 5/23/2023
1.0.16 2,934 5/22/2023
1.0.15 5,954 5/17/2023
1.0.14 173 5/17/2023
1.0.13 5,580 4/28/2023
1.0.12 2,206 4/24/2023
1.0.11 959 4/21/2023
1.0.10 4,478 4/12/2023
1.0.9 1,063 4/11/2023
1.0.8 2,022 4/3/2023
1.0.7 227 4/3/2023
1.0.6 360 4/1/2023
1.0.5 2,033 3/23/2023
1.0.3 539 2/28/2023
1.0.2 444 2/16/2023