JJ.Framework.Common.Core
4.9.7151
Prefix Reserved
dotnet add package JJ.Framework.Common.Core --version 4.9.7151
NuGet\Install-Package JJ.Framework.Common.Core -Version 4.9.7151
<PackageReference Include="JJ.Framework.Common.Core" Version="4.9.7151" />
<PackageVersion Include="JJ.Framework.Common.Core" Version="4.9.7151" />
<PackageReference Include="JJ.Framework.Common.Core" />
paket add JJ.Framework.Common.Core --version 4.9.7151
#r "nuget: JJ.Framework.Common.Core, 4.9.7151"
#:package JJ.Framework.Common.Core@4.9.7151
#addin nuget:?package=JJ.Framework.Common.Core&version=4.9.7151
#tool nuget:?package=JJ.Framework.Common.Core&version=4.9.7151
JJ.Framework.Common.Core
General-purpose utilities with minimal dependencies.
An extension to JJ.Framework.Common.Legacy.
NameHelperName()returns the current method name or current property name.TextOf(...)gets the string representation of an expression.
FlaggingSets or gets flags from bit fields (ints) and flag enums.
These otherwise require (hard to remember) bit operations.
These can help you in a moment of confusion:HasFlagto ask: "Is this bit or flag set?"SetFlag/ClearFlagtoggles a single flagSetFlags/ClearFlagswhen you've got a collection of flags
EnvironmentHelperEnvironmentVariableIsDefinedmethod: shorthand to check if an environment variable is defined with a specific key and value.
ConfigurationHelperCoreTryGetSectionmethod that complementsGetSectionbut now when the configuration section is not found,nullis returned, instead of a crash. (This helper avoids direct use ofSystem.Configuration.)
OverloadByName/NameOvl- Allows overloading by parameter name, which you normally cannot do:
MyMethod(10, arg: true); MyMethod(10, differentArg: true); - One of those methods has a hidden optional parameter:
void MyMethod(int num, bool arg); void MyMethod(int num, bool differentArg, OverloadByName ovl = default);
- Allows overloading by parameter name, which you normally cannot do:
GenericOverload/GenOvl:Dummy type used to differentiate generic method overloads that only differ by generic constraints e.g.,
where T : struct where T : classC# does not always allow overloading based solely on generic constraints, so this marker type enables the the use of such overloads anyway, by showing distinct signatures to the compiler e.g.,
MyMethod() where T : struct MyMethod(GenOvl _ = default) where T : classThe the calls to the generic overloads will differentiate just fine and do not require active use of the optional parameter.
(When brevity is required
GenOvlcan serve as a synonym forGenericOverload.)
Release Notes
2026-02-17 | 3.7 : Clash of the Booleans
OverloadByNamehelper for an optional parameter trick to simulate overloading by name, not normally possible in C#.
2026-06-29 | 4.8 : Small Addition
GenericOverload/GenOvl:- Placeholder type for adding optional parameters to generic overloads, that would otherwise clash.
- This type adds docs explaning the technique, and avoids further overload clashes, from chosing a different parameter type.
💬 Feedback
Found an issue? Let me know.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. 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 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 is compatible. 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 is compatible. 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 is compatible. 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 | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. 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. |
-
.NETStandard 2.0
- JJ.Framework.Build (>= 4.9.7151)
- JJ.Framework.Common.Legacy (>= 0.257.7151)
-
.NETStandard 2.1
- JJ.Framework.Build (>= 4.9.7151)
- JJ.Framework.Common.Legacy (>= 0.257.7151)
-
net10.0
- JJ.Framework.Build (>= 4.9.7151)
- JJ.Framework.Common.Legacy (>= 0.257.7151)
-
net6.0
- JJ.Framework.Build (>= 4.9.7151)
- JJ.Framework.Common.Legacy (>= 0.257.7151)
-
net7.0
- JJ.Framework.Build (>= 4.9.7151)
- JJ.Framework.Common.Legacy (>= 0.257.7151)
-
net8.0
- JJ.Framework.Build (>= 4.9.7151)
- JJ.Framework.Common.Legacy (>= 0.257.7151)
-
net9.0
- JJ.Framework.Build (>= 4.9.7151)
- JJ.Framework.Common.Legacy (>= 0.257.7151)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on JJ.Framework.Common.Core:
| Package | Downloads |
|---|---|
|
JJ.Framework.Existence.Core
Has(text), Coalesce(a,b,c), list.Where(FilledIn) to replace garbage like !Equals(x, default(T?)) && !Equals(x, default(T)) and string.IsNullOrWhiteSpace(text). Fallbacks, emptiness checks coded like you mean it. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.9.7151 | 0 | 7/2/2026 |
| 4.8.7095 | 74 | 6/30/2026 |
| 4.7.7026 | 160 | 6/23/2026 |
| 4.7.7023 | 149 | 6/23/2026 |
| 4.6.6251 | 185 | 4/25/2026 |
| 4.5.6073 | 175 | 4/8/2026 |
| 4.4.6001 | 153 | 4/4/2026 |
| 4.1.5729 | 153 | 3/16/2026 |
| 4.1.5705 | 145 | 3/15/2026 |
| 4.0.5600 | 161 | 3/13/2026 |
| 3.9.5203 | 159 | 2/26/2026 |
| 3.8.4991 | 170 | 2/23/2026 |
| 3.8.4987 | 142 | 2/23/2026 |
| 3.7.4821 | 154 | 2/17/2026 |
| 3.4.4554 | 426 | 2/1/2026 |
| 3.3.4542 | 173 | 1/31/2026 |
| 3.2.4531 | 183 | 1/31/2026 |
| 3.2.4511 | 178 | 1/31/2026 |
| 3.1.4474 | 192 | 1/28/2026 |