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?