SuperStrong.Types.EntityFrameworkCore
1.0.0-beta.4
dotnet add package SuperStrong.Types.EntityFrameworkCore --version 1.0.0-beta.4
NuGet\Install-Package SuperStrong.Types.EntityFrameworkCore -Version 1.0.0-beta.4
<PackageReference Include="SuperStrong.Types.EntityFrameworkCore" Version="1.0.0-beta.4" />
<PackageVersion Include="SuperStrong.Types.EntityFrameworkCore" Version="1.0.0-beta.4" />
<PackageReference Include="SuperStrong.Types.EntityFrameworkCore" />
paket add SuperStrong.Types.EntityFrameworkCore --version 1.0.0-beta.4
#r "nuget: SuperStrong.Types.EntityFrameworkCore, 1.0.0-beta.4"
#:package SuperStrong.Types.EntityFrameworkCore@1.0.0-beta.4
#addin nuget:?package=SuperStrong.Types.EntityFrameworkCore&version=1.0.0-beta.4&prerelease
#tool nuget:?package=SuperStrong.Types.EntityFrameworkCore&version=1.0.0-beta.4&prerelease
SuperStrong.Types
Strong types for .NET — define once, use everywhere!
SuperStrong.Types is in beta: the API and features are not in final shape yet.
What does this library do?
You write this:
[StrongType<Guid>]
public sealed partial class UserId;
You get auto-generated:
- wrapping:
_value,From(...),TryFrom(...),AsPrimitive(),IStrongType<,> - equality:
==,!=,Equals(...),GetHashCode(),IEquatable<>,IEqualityOperators<,,> - comparison:
<,<=,>,>=,IComparable<>,IComparisonOperators<,,> - formatting:
ToString(...),IFormattable,ISpanFormattable,IUtf8SpanFormattable - parsing:
IParsable<>,ISpanParsable<>,IUtf8SpanParsable<> - conversion:
IConvertible,TypeConverter,JsonConverter
You can easily integrate it with:
- ASP.NET Core
- EF Core
- Hot Chocolate
- Newtonsoft.Json
and more coming soon: OpenAPI, Dapper, MessagePack, ...
How to install?
Install the package from NuGet:
dotnet add package SuperStrong.Types --preview
This library targets .NET 10, so your project should target .NET 10 or higher to be compatible with SuperStrong.Types.
Why use this library?
Fighting primitive obsession usually requires a lot of boilerplate.
SuperStrong.Types generates that boilerplate for you, so you can focus on modelling your domain instead of writing repetitive code.
What's next?
- Find out more in the tutorial
- Learn about strong type validation and customization
- Take a look at the available integrations
- Compare SuperStrong.Types with alternatives
Acknowledgements
SuperStrong.Types is inspired by two excellent libraries:
- StronglyTypedId by Andrew Lock
- Vogen by Steve Dunn
Thanks to both authors for the ideas and groundwork.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- Microsoft.EntityFrameworkCore (>= 10.0.0 && < 11.0.0)
- Microsoft.EntityFrameworkCore.Relational (>= 10.0.0 && < 11.0.0)
- SuperStrong.Types (>= 1.0.0-beta.4)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on SuperStrong.Types.EntityFrameworkCore:
| Package | Downloads |
|---|---|
|
SuperStrong.Types.EntityFrameworkCore.Npgsql
Strong types for .NET — define once, use everywhere! |
|
|
SuperStrong.Types.EntityFrameworkCore.SqlServer
Strong types for .NET — define once, use everywhere! |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-beta.4 | 0 | 6/20/2026 |
| 1.0.0-beta.3 | 0 | 6/20/2026 |
| 1.0.0-beta.2 | 0 | 6/20/2026 |
| 1.0.0-beta.1 | 0 | 6/20/2026 |
| 1.0.0-alpha.7 | 34 | 6/20/2026 |
| 1.0.0-alpha.6 | 34 | 6/19/2026 |
| 1.0.0-alpha.5 | 40 | 6/19/2026 |
| 1.0.0-alpha.4 | 42 | 6/18/2026 |
| 1.0.0-alpha.3 | 50 | 6/16/2026 |
| 1.0.0-alpha.2 | 52 | 6/15/2026 |
| 1.0.0-alpha.1 | 51 | 6/14/2026 |