Получить переопределенный атрибут свойства

У меня есть собственный атрибут, как это:

public class PropertyInfoAttribute : Attribute
{
    public bool IsAutoComplete { get; set; }
}

И есть такой класс:

public class Article
{
    public virtual int Order { get; set; }
    //other properties
}

В другом классе, который наследуется от Article, я переопределяю свойство Order и объявляю атрибут для него следующим образом:

public class ArticleDetails : Article
{
    [PropertyInfo(IsAutoCompele = true)]
    public override int Order { get; set; }
}

Проблема возникает, когда я хочу получить атрибуты с помощью метода GetCustomAttributes в классе PropertyInfo. Я делаю это так:

PropertyInfo propInfo = //do something for getting property info from the
                        //ArticleDetails class;

var attr = propInfo.GetCustomAttribute<PropertyInfoAttribute>();

Но это ничего не возвращает! Я не знаю почему!

ОБНОВИТЬ:

Я получаю информацию о недвижимости в этом методе:

    public static void InitPropertyInfoAttribute<TModel, TProperty>(MvcHtmlString source, Expression<Func<TModel, TProperty>> expression)
    {
        PropertyInfo propInfo = (expression.Body as MemberExpression).Member as PropertyInfo;
    }

Ответы на вопрос(2)

Ваш ответ на вопрос