2012-06-25 4 views
6

Unity Container tarafından yönetilen servislerde gerçekleşen her eylemi dosya sistemindeki günlükler olarak izleyeceğim. IService adında bir arabirim tanımlayabilirim ve diğer tüm arabirimler veya uygulama ondan miras almalıdır. Öte yandan, günlükleri dosyalara kaydetmek için özel bir müdahale davranışı veya çağrı işleyici geliştirmek istiyorum.Unity'deki tüm kayıtlı türler için bir günlüğe kaydetme engelleyicisi nasıl yapılandırılır?

Ne yazık ki, bu kodları

IUnityContainer unity = new UnityContainer(); 

//Interception 
unity.AddNewExtension<Interception>(); 
Interception interception = unity.Configure<Interception>(); 
unity.RegisterType<IService>(
    new DefaultInterceptor(new InterfaceInterceptor()), 
    new DefaultInterceptionBehavior(new LoggingBehavior())); 

string[] configFiles = Directory.GetFiles(".", "*.config"); 
foreach (string configFile in configFiles) 
{ 
    var fileMap = new ExeConfigurationFileMap { ExeConfigFilename = configFile }; 
    System.Configuration.Configuration configuration = 
     ConfigurationManager.OpenMappedExeConfiguration(fileMap, 
     ConfigurationUserLevel.None); 
    var unitySection = (UnityConfigurationSection) 
     configuration.GetSection("unity"); 
    unity = unitySection.Configure(unity); 
} 

IGateway imapGW = unity.Resolve<IGateway>("ImapGateway"); 

beni Unity önleme kullanmak için herhangi bir yanlış anlama var mı

kullanarak benim için çalışmıyor bulundu? Her bir hizmet için önleyici yapılandırmadan otomatik olarak her şeyi günlüğe kaydetmek için bu sorunu nasıl ele alabilirim?

cevap

3

Kaydediciyi uygulamak için birçok yol vardır. Eğer Debug.Write kullanın ve TraceListeners yapılandırabilirsiniz kaydedilmesini sağlamak amacıyla

http://hmadrigal.wordpress.com/2010/12/25/aspect-oriented-programming-and-interceptor-design-pattern-with-unity-2/

: Uzun zaman önce ben önleyicilerin nasıl kurulacağı hakkında bir makale yazdı. Ya da Enterprise Library'yi veya herhangi bir üçüncü parti kayıt kütüphanesini de kullanabilirsiniz.

Saygılarımızla, Herber

İlgili konular