Net4x.BaseExtensions
1.3.1.13
See the version list below for details.
dotnet add package Net4x.BaseExtensions --version 1.3.1.13
NuGet\Install-Package Net4x.BaseExtensions -Version 1.3.1.13
<PackageReference Include="Net4x.BaseExtensions" Version="1.3.1.13" />
<PackageVersion Include="Net4x.BaseExtensions" Version="1.3.1.13" />
<PackageReference Include="Net4x.BaseExtensions" />
paket add Net4x.BaseExtensions --version 1.3.1.13
#r "nuget: Net4x.BaseExtensions, 1.3.1.13"
#:package Net4x.BaseExtensions@1.3.1.13
#addin nuget:?package=Net4x.BaseExtensions&version=1.3.1.13
#tool nuget:?package=Net4x.BaseExtensions&version=1.3.1.13
Net4x.BaseExtensions
Net4x.BaseExtensions is a small compatibility and helper library that complements Net4x.BaseTypes. It provides extension methods, light-weight memory/span helpers, and small utilities that make it easier to write code that runs across many .NET target frameworks (from older .NET Framework versions up to modern .NET).
The library focuses on portability and low-dependency abstractions so it can be included in projects that must support a wide range of TFMs.
Key features
- Extension methods for common types to reduce boilerplate
- Lightweight
ReadOnlySpan/Memoryshims and helpers for older TFMs - Simplified event handling helpers and
EventHandlercompatibility code - Encoding detection and string-related helpers
- Utilities intended for use inside shared libraries and multi-targeted projects
Supported target frameworks
This project is multi-targeted to improve compatibility. Typical TFMs included are:
- .NET Standard 2.0 and 2.1
- .NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.6.2, 4.7.2
- .NET 6, .NET 8, .NET 10
Project layout
src/Net4x.BaseExtensions- Core extension methods and compatibility code (multi-targeted)EventHandler.cs- helpers to unify event patternsReadOnlySpan.cs,Memory.cs- compatibility types and helpers- other helpers and extension files
tests/Net4x.BaseTypes.Tests- unit tests that exerciseNet4x.BaseExtensionsandNet4x.BaseTypes
Building
Build the project or solution using the .NET SDK installed on your machine. Example commands:
Build everything:
dotnet buildBuild only this project:
dotnet build src/Net4x.BaseExtensions/Net4x.BaseExtensions.csproj
Running tests
Unit tests that exercise this library are included in the tests folder. Run them with:
dotnet test
Usage
Add a project reference to Net4x.BaseExtensions or add the compiled assembly to your project. Because the library is multi-targeted, you can reference the appropriate build for your target framework.
Contributing
Contributions are welcome. When opening pull requests:
- Keep changes focused and small
- Add or update unit tests for new behavior or bug fixes
- Maintain compatibility with supported TFMs unless intentionally changing targets
License
This project is licensed under the Apache-2.0 license. See the LICENSE.txt file for details.
Contact
Open an issue in the repository for questions, bug reports, or feature requests.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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. 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net20 is compatible. net30 is compatible. net35 is compatible. net40 is compatible. net403 was computed. net45 is compatible. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 2.0
- Net4x.BaseTypes (>= 1.3.1.13)
-
.NETFramework 3.0
- Net4x.BaseTypes (>= 1.3.1.13)
-
.NETFramework 3.5
- Net4x.BaseTypes (>= 1.3.1.13)
-
.NETFramework 4.0
- Net4x.BaseTypes (>= 1.3.1.13)
-
.NETFramework 4.5
- Net4x.BaseTypes (>= 1.3.1.13)
-
.NETFramework 4.7.2
- Net4x.BaseTypes (>= 1.3.1.13)
-
.NETStandard 2.0
- Net4x.BaseTypes (>= 1.3.1.13)
-
.NETStandard 2.1
- Net4x.BaseTypes (>= 1.3.1.13)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Net4x.BaseExtensions:
| Package | Downloads |
|---|---|
|
Net4x.SpreadsheetLibrary.Base
Package Description |
|
|
Net4x.Text.Json
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.