Я знаю, что в Castle Windsor можно регистрировать аспекты (при использовании перехвата методов в Windsor как AOP), используя код вместо применения атрибутов к классам. Возможно ли то же самое в Postsharp? Это дело предпочтений, но лучше иметь аспекты, сопоставленные с интерфейсами/объектами в одном месте, в отличие от атрибутов повсюду.
Update: Любопытно, могу ли я назначить аспекты интерфейсам/объектам примерно так:
container.Register(
Component
.For<IService>()
.ImplementedBy<Service>()
.Interceptors(InterceptorReference.ForType<LoggingAspect>()).Anywhere
);
Если бы вы могли это сделать, у вас была бы возможность НЕ размещать атрибуты на сборках/классах/методах для применения аспектов. Тогда я смогу иметь один файл кода/класс, который содержит, какие аспекты применяются к какому классу/методу/и т.д.