Использование AspectPriority - PullRequest
       8

Использование AspectPriority

5 голосов
/ 02 ноября 2011

Я использую PostSharp 2.1.5.1 и получил предупреждение сегодня:

Аспектные зависимости (определены на «MyNamespace.MyAspect.MyVerificationAttribute») будет отключен из версия для начинающих в будущих версиях. Используйте AspectPriority свойство вместо.

Мне кажется, что следующая строка вызывает это предупреждение:

[AspectRoleDependency(AspectDependencyAction.Order, AspectDependencyPosition.After, StandardRoles.Tracing)]

Может ли кто-нибудь указать мне правильный пример использования AspectPriority? Следующие примеры актуальны?

Спасибо.

1 Ответ

4 голосов
/ 02 ноября 2011

Правильное использование - AttributePriority.Более низкие значения имеют более высокий приоритет, или аспекты, которые применяются первыми.

[Trace(AttributePriority = 2)]
[HandleError(AttributePriority = 1)]
public void MyMethod()
{

}

Приоритет аспекта недействителен некоторое время.AspectDependencyAction определяет «приоритет» между двумя аспектами.Это означает, что если Aspect1 зависит от Aspect2, то и AspectDependencyAction.Order = After затем Aspect1 применяется после того, как Aspect2 был применен.но это не то, что вы ищете (я думаю).Просто используйте вместо этого AttributePriority.

...