Castle Windsor ile biliyorum, sınıflara öznitelikleri uygulamak yerine kod kullanarak yönlerini (Windsor'da AOP olarak yöntem durdurmayı kullanırken) kaydedebilirsiniz. Aynı Postharp'ta mümkün mü? Bu bir tercih meselesidir, ancak her yerin özniteliklerinin aksine, tek bir yerde arayüzler/nesnelerle eşleşen yönlere sahip olmayı tercih eder.PostSharp'taki özellikleri nitelik kullanmadan uygulayabilir misiniz?
Güncelleme: Ben arayüzlerine yönlerini atayabilirsiniz eğer Meraklı/nesneler buna benzer : Bunu olsaydı
container.Register(
Component
.For<IService>()
.ImplementedBy<Service>()
.Interceptors(InterceptorReference.ForType<LoggingAspect>()).Anywhere
);
, sen derlemeler özelliklerini yerleştirmek zorunda DEĞİL seçeneği olurdu/yönleri uygulamak için sınıf/yöntemler. Daha sonra hangi yönlerin hangi sınıfa/yöntemlere/etc'ye uygulanacağını içeren bir kod dosyasına/sınıfına sahip olabilirim.
Bu makalelerde, yine de sınıf için bir öznitelik geçerli görünüyor. Castle'ın Dinamik Enjeksiyon Nasıl Yaptığını Çizerken: http://blog.andreloker.de/post/2009/02/20/Simple-AOP-integrating-interceptors-into-Windsor.aspx. PostSharp ile bunu yapabilirsen merak ediyorum. PostSharp kendi yönlerini derleme zamanı olarak ele aldığından bu yana olmadığını anlayabilir. –
Neye ulaşmak istiyorsunuz? Sorunuz "Bu bir tercih meselesidir, ancak her yerde özniteliklerin aksine, tek bir yerde arayüzler/nesnelerle eşleşen yönlere sahip olmayı tercih eder." Bu yüzden yaptığım cevapları verdim. Şimdi, çalışma zamanında yönleri etkinleştirmek veya devre dışı bırakmak istediğiniz gibi geliyor. Özellikler nitelikler kullanılarak uygulanırsa ne fark eder? Çalışma zamanı ve derleme zamanı ile ilgili endişeleriniz var mı? –
Güncel soru. Bir şeyleri temizlerse haber ver. –