TekH
b460d8df39
refactor: Remove Base64String value object per YAGNI principle
Remove unnecessary Base64String value object:
- Performance overhead (validation runs twice: value object + FluentValidation)
- Unnecessary abstraction (Convert.FromBase64String already validates)
- YAGNI principle: use string directly + extension methods if needed
Replaced with:
- Direct string usage in DTOs
- FluentValidation for Base64 format validation
- FormatException handling in ExceptionHandlingMiddleware (maps to 400)
Result: Simpler code, better performance, same validation coverage