데브허브 | DEVHUB | Minimal APIs are FINALLY production-readyMinimal APIs are FINALLY production-ready
- .NET 10에서 Minimal API에 내장된 유효성 검사 기능이 추가되었으며, 이는 가장 많이 요청된 기능 중 하나입니다. 🚀
- 유효성 검사를 활성화하려면 서비스에
AddValidation()을 추가하고, .csproj 파일에 인터셉터 참조를 명시해야 합니다. 🛠️
[Required], [EmailAddress], [RegularExpression] 등 다양한 내장 유효성 검사 속성을 사용할 수 있습니다. ✅
- 유효성 검사는 런타임이 아닌 소스 생성 인터셉터를 통해 효율적으로 작동하여 성능상의 이점을 제공합니다. ⚡
- 객체 수준의 복잡한 유효성 검사를 위해
IValidatableObject 인터페이스를 구현하여 Validate 메서드를 오버라이드할 수 있으며, 이를 통해 여러 속성을 조합한 논리를 구현할 수 있습니다. 🧩
- 속성 수준의 사용자 지정 유효성 검사를 위해
ValidationAttribute를 상속받아 IsValid 및 FormatErrorMessage 메서드를 재정의할 수 있습니다. ✍️
- API 엔드포인트의 매개변수에도 직접 유효성 검사 속성을 적용할 수 있습니다. 🎯
- 특정 엔드포인트의 유효성 검사를 비활성화하려면
[DisableValidation] 속성을 사용합니다. 🚫
.csproj 파일에 인터셉터 참조를 수동으로 추가해야 하는 점과 FormatErrorMessage의 name 매개변수 문서화가 불분명한 점은 개선이 필요합니다. 🚧
- 전반적으로 Minimal API에 내장된 유효성 검사 기능 추가는 긍정적이며, 개발 편의성을 크게 향상시킬 것으로 기대됩니다. 👍