creé un atributo heredado como este en ASP.NET MVC3:La validación del lado del cliente no funciona cuando inhert desde RequiredAttribute en ASP.NET MVC 3?
public sealed class RequiredFromResourceAttribute : RequiredAttribute
{
public RequiredFromResourceAttribute(string errorResourceName, string errorResourceTypeName)
{
this.ErrorMessageResourceName = errorResourceName;
this.ErrorMessageResourceType = Type.GetType(errorResourceTypeName);
}
}
Y utilizar de esta manera:
[RequiredFromResource("Title", "Resources.Resource, MyProject.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null")]
public string Title { get; set; }
No funcionó y el MVC ignoró. Luego de crear una clase más simple, que acaba de heredar de RequiredAttribute así:
public class MyRequiredAttribute : RequiredAttribute
{
}
lo uso como que dije. Pero no funcionó de nuevo.
Aunque, todas estas formas funcionan perfectamente en "DisplayNameAtrribute".
¿Cuál es el problema?
En mi opinión, la respuesta de marcind maneja esto mejor que SkipHarris '. El RequiredAttributeAdapter en Skip's parece causar que la validación del lado del cliente use el atributo Requerido normal en lugar del RequiredFromResourceAttribute. – Keerigan