Sử dụng action filter để validate model trong asp.net core

Thông thường trong asp.net core/mvc ta hay sử dụng các attribute để check điều kiện validate cho model, ví dụ như

Trong action method kiểm tra model hợp lệ hay không bằng cách sử dụng ModelState

Cách này hoạt động tốt tuy nhiên hơi nông dân vì phải check điều kiện ở nhiều Action method, nhiều controller khác nhau. Dẫn đến code bị lặp lại nhiều lần, trông không đẹp & khó bảo trì. Để khắc phục tình trạng này thì bây giờ chúng ta sẽ sử dụng Action filter để validate như sau

Bước 1 : Tạo 1 class cho action filter, dùng để validate