EssaLab.StronglyTypedIds.Core
2.0.0
dotnet add package EssaLab.StronglyTypedIds.Core --version 2.0.0
NuGet\Install-Package EssaLab.StronglyTypedIds.Core -Version 2.0.0
<PackageReference Include="EssaLab.StronglyTypedIds.Core" Version="2.0.0"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
<PackageVersion Include="EssaLab.StronglyTypedIds.Core" Version="2.0.0" />
<PackageReference Include="EssaLab.StronglyTypedIds.Core"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add EssaLab.StronglyTypedIds.Core --version 2.0.0
#r "nuget: EssaLab.StronglyTypedIds.Core, 2.0.0"
#:package EssaLab.StronglyTypedIds.Core@2.0.0
#addin nuget:?package=EssaLab.StronglyTypedIds.Core&version=2.0.0
#tool nuget:?package=EssaLab.StronglyTypedIds.Core&version=2.0.0
EssaLab.StronglyTypedIds.Core
The foundational compilation tool behind the EssaLab Strongly Typed IDs framework, focusing exclusively on domain-level identifier generation.
Responsibilities
EssaLab.StronglyTypedIds.Core acts as the source generation baseline for producing performant, unencumbered Domain Identifiers. It holds the following technical objectives:
- Emitting Structural Artifacts: Generates the
[StronglyTypedId]marker attribute explicitly within the scope of the consuming assembly. This avoids distributing an external runtime DLL dependency just for markers. - Assembly Metadata Discovery (AMD): Automatically flags the compiling assembly with
EssaLab.StronglyTypedIds.Fingerprint._StronglyTypedIdsBaseGenerated. This metadata fingerprint plays a crucial role for advanced tooling; it permits satellite converters (such asEssaLab.StronglyTypedIds.Convertors.EFCore) to locate Domain Assemblies in micro-seconds, guaranteeing O(1) discovery performance and safely bypassing recursive AST node traversal operations entirely. - Primitive and Complex Operators: Emits concrete
record structidentifiers backed optionally byGuid,int,long,string, ordecimal. ResolvesIComparable,IEquatable, and mathematical equality implementations cleanly into source. - Universal Parameter Binding Engine: Generates multiple universal
TryParsedefinitions across compatibility boundaries. When installed on contemporary frameworks (.NET 7+), it synthesizes standardIParsable<T>representations out of the box. This provides pristine routing bindings allowing parameters to automatically map from URLs directly into Strongly Typed IDs across Minimal API and ASP.NET Core MVC controllers with zero configuration.
Best Practices
Install this minimal dependency within your foundational mapping layers, such as YourApplication.Domain. Types defined internally will gracefully scale out through auxiliary compilation references down the pipeline.
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.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.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0 | 132 | 3/28/2026 |
| 1.0.0-preview | 141 | 3/13/2026 |