Baksteen.Extensions.WhereNotNull
1.0.0
.NET 5.0
.NET Standard 2.1
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Baksteen.Extensions.WhereNotNull --version 1.0.0
NuGet\Install-Package Baksteen.Extensions.WhereNotNull -Version 1.0.0
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="Baksteen.Extensions.WhereNotNull" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Baksteen.Extensions.WhereNotNull --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Baksteen.Extensions.WhereNotNull, 1.0.0"
#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 Baksteen.Extensions.WhereNotNull as a Cake Addin
#addin nuget:?package=Baksteen.Extensions.WhereNotNull&version=1.0.0
// Install Baksteen.Extensions.WhereNotNull as a Cake Tool
#tool nuget:?package=Baksteen.Extensions.WhereNotNull&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Baksteen.Extensions.WhereNotNull
This package contains a pair of IEnumerable extension methods named WhereNotNull()
. The method skips all null elements from a sequence.
This is useful for projects that have nullable reference types enabled because it converts IEnumerable<T?>
into IEnumerable<T>
.
How to use:
For nullable reference types:
using Baksteen.Extensions.WhereNotNull;
...
var seq = new string?[] { "one", null, "two", null, null, "three", null, null, null }
var result = seq.WhereNotNull();
// the result is IEnumerable<string> { "one", "two", "three" }
For nullable value types:
using Baksteen.Extensions.WhereNotNull;
...
var seq = new int?[] { 1, null, 2, null, null, 3, null, null, null }
var result = seq.WhereNotNull();
// the result is IEnumerable<int> { 1, 2, 3 }
See also
For more insight on the rationale of this extension, see:
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. 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. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.1
- No dependencies.
-
net5.0
- No dependencies.
-
net6.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
First release