When using Data Annotations Validation, everything works fine until I try to use resources.
Here's the error I get: The name 'ErrorMessageResourceType' does not exist in the current context.
And the code I used:
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using Microsoft.Web.Mvc;
namespace Project.Models
{
[MetadataType(typeof(LanguageMetaData))]
public partial class Language
{
}
public class LanguageMetaData
{
[Required(ErrorMessageResourceType(typeof(Resources.Errors)),
ErrorMessageResourceName = "IdRequired")]
public object Id { get; set; }
[Required(ErrorMessageResourceType(typeof(Resources.Errors)),
ErrorMessageResourceName = "NameRequired")]
public object Name { get; set; }
public object Flag { get; set; }
public object IsDefault { get; set; }
}
}
I can't find anything wrong with this. Can someone more experienced help me with what's wrong?
Thank you!
It has to be
ErrorMessageResourceType = typeof(Resources.Errors)
instead of
ErrorMessageResourceType(typeof(Resources.Errors))
This was a small big damn stupid mistake :D
Hope this helps anyone who had the same problem!
You need to use both ErrorMessageResourceType
and ErrorMessageResourceName
.
[EmailAddress(ErrorMessageResourceType = typeof(Resource),ErrorMessageResourceName = "Message_ValidEmail")]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With