DotnetEx.System.Threading.Tasks.Extensions.Ex
4.1.31
See the version list below for details.
dotnet add package DotnetEx.System.Threading.Tasks.Extensions.Ex --version 4.1.31
NuGet\Install-Package DotnetEx.System.Threading.Tasks.Extensions.Ex -Version 4.1.31
<PackageReference Include="DotnetEx.System.Threading.Tasks.Extensions.Ex" Version="4.1.31" />
<PackageVersion Include="DotnetEx.System.Threading.Tasks.Extensions.Ex" Version="4.1.31" />
<PackageReference Include="DotnetEx.System.Threading.Tasks.Extensions.Ex" />
paket add DotnetEx.System.Threading.Tasks.Extensions.Ex --version 4.1.31
#r "nuget: DotnetEx.System.Threading.Tasks.Extensions.Ex, 4.1.31"
#:package DotnetEx.System.Threading.Tasks.Extensions.Ex@4.1.31
#addin nuget:?package=DotnetEx.System.Threading.Tasks.Extensions.Ex&version=4.1.31
#tool nuget:?package=DotnetEx.System.Threading.Tasks.Extensions.Ex&version=4.1.31
DotnetEx4
DotnetEx4 is organized in a dotnet/runtime-inspired layout so legacy .NET Framework backports, modern targets, tests, and NuGet packaging have clear ownership and minimal duplicated MSBuild configuration.
Repository layout
Directory.Build.props/Directory.Build.targets— root repository controller pair, like dotnet/runtimeglobal.json— repository SDK selectioneng/— central build, target, version, dependency, signing, validation and NuGet controllerssrc/corelib/—HFDotnetEx.HFExtensions, the mscorlib/System.Private.CoreLib compatibility layersrc/libraries/— product libraries and runtime/framework backportssrc/tools/— repository toolssrc/shared/— shared.shproj/.projitemssourcetests/— isolated test projects; target-map only, never NuGet packagessamples/— isolated demos; the two downloader demos are intentionally package-eligibleDotnetEx4.slnx— canonical solutionDOTNETEX4_PROJECT_MAP.txt— complete architecture and agent operating manual
Central-control rule
One setting has one owner. Repository-wide C# 14/default paths/common symbols live in root Directory.Build.props; framework profiles live in eng/TargetFrameworks.props; project registration in eng/Projects.props; dependency routing in eng/Dependencies.props; dependency/product versions in eng/Versions.props; NuGet release version, package selection, IDs, titles and tags in eng/NuGet.Metadata.props; and signing in eng/Signing.props.
The root Directory.Build.* pair is deliberately small. Production folders (src/corelib, src/libraries, src/tools) have scoped Directory.Build.* files that explicitly import the root pair and then the production eng/Build.* chain. Tests and samples have no local Directory.Build.*; they inherit the safe root defaults/target map. Samples remain isolated from production controller imports even when intentionally packed.
Source ownership
For every exact API/target, prefer: native runtime/framework → official Microsoft NuGet package → DotnetEx backport. Never allow duplicate owners for the same API on the same target.
NuGet
The current release version is 4.1.31, controlled only by eng/NuGet.Metadata.props. The central catalog contains 27 packages. Tests and tools are excluded; the two downloader demo samples are intentionally included.
NuGet.org reserves the public Microsoft.* and System.* prefixes. DotnetEx backport packages for those families therefore publish as DotnetEx.Microsoft.* and DotnetEx.System.*, while their official/.Ex identities remain in package Title and Tags. HFDotnetEx.Helpers intentionally keeps its existing package ID.
Before editing
Read DOTNETEX4_PROJECT_MAP.txt. It explains every controller, target profile, production project, package identity, special ownership boundary, test/sample rule, and the exact procedure for adding a new project.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET Framework | net20 is compatible. net30 is compatible. net35 is compatible. net40 is compatible. net403 was computed. net45 was computed. 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 was computed. net48 was computed. net481 was computed. |
-
.NETFramework 2.0
- HFExtensions (>= 4.1.31)
-
.NETFramework 3.0
- HFExtensions (>= 4.1.31)
-
.NETFramework 3.5
- HFExtensions (>= 4.1.31)
-
.NETFramework 4.0
- HFExtensions (>= 4.1.31)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on DotnetEx.System.Threading.Tasks.Extensions.Ex:
| Package | Downloads |
|---|---|
|
HFDownloaderNetEx2
Downloader library for DotnetEx with target-specific native, official Microsoft NuGet, and legacy backport routing from .NET Framework 2.0 through .NET 10. |
|
|
HFDotnetEx.Helpers
Shared helper APIs used by DotnetEx across legacy .NET Framework and modern .NET targets. |
|
|
DotnetEx.System.Memory.Ex
System.Memory compatibility/backport package for legacy .NET Framework targets before the exact official Microsoft package boundary used by DotnetEx. |
|
|
DotnetEx.Microsoft.Bcl.AsyncInterfaces.Ex
Microsoft.Bcl.AsyncInterfaces compatibility/backport package for legacy .NET Framework targets that do not have an exact supported Microsoft package asset in the DotnetEx target map. |
|
|
DotnetEx.System.Runtime.Ex
System.Runtime facade/backport package for .NET Framework 2.0 through 4.0; .NET Framework 4.5 and later remain on the official Microsoft System.Runtime package. |
GitHub repositories
This package is not used by any popular GitHub repositories.