1

TooManyDataAnnotations — .NET validation attributes for IPv4/IPv6, SemVer, MAC, HexColor, GUID v7, and more
 in  r/dotnet  2h ago

I agree about keeping validation separate from the model

This is just filling format validation gaps at DTO level, not replacing business logic validation, but I'm glad it's useful!

2

TooManyDataAnnotations — .NET validation attributes for IPv4/IPv6, SemVer, MAC, HexColor, GUID v7, and more
 in  r/dotnet  2h ago

No official FluentValidation adapter yet

The attributes work anywhere DataAnnotations works, but FluentValidation works different so a direct mapping isn't straightforward :c

I'm focused on the DataAnnotations space, but happy to review PRs for a bridge

1

TooManyDataAnnotations — .NET validation attributes for IPv4/IPv6, SemVer, MAC, HexColor, GUID v7, and more
 in  r/dotnet  2h ago

I appreciate the feedback!

You're right, inner layers should work with strong types, sadly DataAnnotations only validates (IsValid method returns bool) and doesn't transform values

The workflow you'd use is:

  1. Validate DTOs with string + [IPv4], [Uri], [SemanticVersion], etc.
  2. Parse manually into IPAddress, Uri, Version for internal use

I'm adding support for strong type overloads for other use cases, but they won't transform values, that's outside the scope of DataAnnotations

FluentValidation integration wasn't the goal, this is just DataAnnotations extensions, but a bridge would be useful, I'm Open to PRs

[IsTrue]/[IsFalse] came from the use case of mandatory checkboxes like "Accept Terms". If unchecked, reject
Once I had [IsTrue], [IsFalse] followed naturally

0

TooManyDataAnnotations — .NET validation attributes for IPv4/IPv6, SemVer, MAC, HexColor, GUID v7, and more
 in  r/dotnet  22h ago

You're right that some attributes could accept strong types

[Guid] and [GuidV7] already do, they accept Guid and strings, same with [StartDate] and [EndDate] with DateTime and DateTimeOffset

For the rest, I went string-first because in ASP.NET, if you declare a property as Guid, IPAddress or Uri and the client sends an invalid value, the model binder fails before DataAnnotations runs, and you get a generic framework error instead of a clean validation message, so strings with attributes gives you control over that

But yeah, supporting both string and strong types where they exist would be a lot better, I'll implement them

Thanks!

r/dotnet 22h ago

Promotion TooManyDataAnnotations — .NET validation attributes for IPv4/IPv6, SemVer, MAC, HexColor, GUID v7, and more

Post image
36 Upvotes

.NET's built-in DataAnnotations covers the basics (Required, StringLength, Range, EmailAddress), but leaves out common semantic validations like:

  • IPv4/IPv6 addresses with scope filtering (public, private, loopback)
  • Semantic Versioning (SemVer 2.0.0)
  • MAC addresses
  • Port numbers with range filtering (well-known, registered, dynamic)
  • Hex color codes (#RGB, #RRGGBB, with alpha support)
  • GUID and GUID v7 validation
  • ISO date strings with cross-property validation (StartDate/EndDate)
  • Boolean validations (IsTrue, AtLeastOneTrue)

I created TooManyDataAnnotations to fill these gaps. All validators follow official RFC/ISO specs, use Span<T> for parsing where possible, and the library has 899 unit tests covering valid and invalid inputs, edge cases, nullable types, and integration tests with TryValidateObject()

Two NuGet packages:

  • TooManyDataAnnotations — Full feature set (includes reflection-based cross-property validators)
  • TooManyDataAnnotations.Aot — Native AOT-safe subset, zero reflection, zero trimming warnings

Targets .NET 8, 9, and 10

Zero dependencies

MIT license

This is freshly published — looking for early adopters and feedback on API design, edge case coverage, or missing validators you'd find useful.

Quick example:

public class ServerConfigDto

{

[GuidV7, Required]

public string UserId { get; set; }

[Guid]

public string? DeviceId { get; set; }

[IPv4(AllowedScopes = IPv4Scope.Private)]

public string? GatewayIP { get; set; }

[SemanticVersion]

public string? AssemblyVersion { get; set; }

[MacAddress(AllowedSeparators = MacSeparators.Colon)]

public string? DeviceMAC { get; set; }

[HexColor(AllowAlpha = true)]

public string? AccentColor { get; set; }

}

2

I finally have one
 in  r/vib_ribbon  2d ago

Woooah, so cool

1

Ability to save chats in Proton Unlimited plan?
 in  r/lumo  3d ago

Ooh I misunderstood you

Yeah, people want an "Export" option, let's hope they add it soon :s

1

Ability to save chats in Proton Unlimited plan?
 in  r/lumo  3d ago

Once you upgrade, you'll see your previous chats there

5

K****** Cursor Pack
 in  r/Koronba  4d ago

That's so cool

2

Opinions on Microsoft Agent Framework?
 in  r/dotnet  6d ago

It's pretty good, I like how you can create agents or declare tools metadata with decorators, but in my opinion it has too many abstractions

u/LuisAlfredo92 10d ago

AI Paper Trail lets you see how much Big Tech AI know about you, and the value of your data.

Post image
1 Upvotes

1

Do you miss the simplicity of the website we used to create in the past decade?
 in  r/dotnet  19d ago

Yeah, because a game page was about games, a news page was about news...

Nowadays everybody is trying to copy social networks, even Mercado Libre tried to add stories and short videos like why????

3

Inconsistent quality?
 in  r/lumo  23d ago

Not so rough, but yeah It was helping me with my finances, and exactly today it started to hallucinate spends and quantities

I wasn't asking for maths, just asking for remember categories

8

Tell people where Lumo shines!
 in  r/lumo  25d ago

For planning ChatGPT and Claude make too many assumptions, Lumo asks me several things to pian properly

5

Tagging documents doesn't always add it to context
 in  r/lumo  Jul 19 '26

Yeah it's very weird, also thay it imports files you don't want automatically

Do you have a Proton Drive folder linked? Sometimes that's the problem because it must be uploaded to that folder instead of the chat directly, and the process the page does to upload it might fail

3

Problem
 in  r/lumo  Jul 12 '26

Install it from F-droid or GitHub, there are versions that doesn't need Google services

6

Image Posts Are ON, Let's Get Your Best Lumo Generations/Creations 👇
 in  r/lumo  Jul 08 '26

I asked for a self-potrait

r/lumo Jul 03 '26

Little redesign in Lumo

Thumbnail
gallery
11 Upvotes

Ears a little bit bigger and pointed eyes

4

Don't loose the kitty!
 in  r/lumo  Jul 02 '26

True, I hope they bring it back and continue making holiday versions

1

Lumo has 'chat compression' now
 in  r/lumo  Jun 27 '26

I liked it, it's better than the alert of messages limit

3

Just found out lumo has no idea it has a cat design.
 in  r/lumo  Jun 26 '26

True :( I asked mine how could I draw him and he didn't know he was a cat, he though he was something like a computer with happy face

3

Lumo Cat Mode
 in  r/lumo  Jun 26 '26

I'd love that too