jwaliszko / ExpressiveAnnotations

Annotation-based conditional validation library.
MIT License
351 stars 123 forks source link

RequiredIf error message support with shared localizer(for multi-language) in MVC project #203

Open oznurco opened 4 years ago

oznurco commented 4 years ago

Hi, I added ExpressiveAnnotations to my MVC project. That works fine but I have a problem with different languages for the error message. If I use below notation in view model class for one attribute, the error message is shown different language. "RequiredAttribute_ValidationError" is exist shared localized file. [Required(ErrorMessage = "RequiredAttribute_ValidationError")]

I use "[RequiredIf("name != null", ErrorMessage = "RequiredAttribute_ValidationError")]" notation in view model class, error message is shown as string "RequiredAttribute_ValidationError" in related field in Html page. How to use "ExpressiveAnnotations" with multi-languages?

okankocyigit commented 4 years ago

Hi oznurco,

You have to use ErrorMessageResourceType and ErrorMessageResourceName parameters to localize your error message.

[RequiredIf("name != null", ErrorMessageResourceType = typeof(Resources), ErrorMessageResourceName = "RequiredAttribute_ValidationError")]