Obtener atributo de propiedad anulado
Tengo un atributo personalizado como este:
public class PropertyInfoAttribute : Attribute
{
public bool IsAutoComplete { get; set; }
}
Y hay una clase como esta:
public class Article
{
public virtual int Order { get; set; }
//other properties
}
En otra clase, que se hereda de un artículo, anulo la propiedad Orden y declaro el atributo de esta manera:
public class ArticleDetails : Article
{
[PropertyInfo(IsAutoCompele = true)]
public override int Order { get; set; }
}
El problema aparece cuando quiero obtener atributos utilizando el método GetCustomAttributes en la clase PropertyInfo. Lo hago así:
PropertyInfo propInfo = //do something for getting property info from the
//ArticleDetails class;
var attr = propInfo.GetCustomAttribute<PropertyInfoAttribute>();
¡Pero no devuelve nada! ¡No sé por qué!
ACTUALIZAR:
Obtengo información de la propiedad en este método:
public static void InitPropertyInfoAttribute<TModel, TProperty>(MvcHtmlString source, Expression<Func<TModel, TProperty>> expression)
{
PropertyInfo propInfo = (expression.Body as MemberExpression).Member as PropertyInfo;
}