Vorrei passare argomenti al costruttore di un appender personalizzato, quindi suppongo di dover sovrascrivere il meccanismo di inizializzazione di Appenders. Il problema è che non riesco a trovare, nei documenti, un modo per collegarlo, e mi fa pensare che non è possibile (o che i documenti sono incompleti).Posso passare argomenti a un costruttore di appender di log4net personalizzato?
Per quanto riguarda la versione 1.2.10, questo non è possibile senza modificare il codice sorgente. La sezione rilevante è in Repository\Hierarchy\XmlHierarchyConfigurator.cs:L286
:
IAppender appender = (IAppender)Activator.CreateInstance(SystemInfo.GetTypeFromString(typeName, true, true));
Come si può vedere, dovrebbe utilizzare questo sovraccarico (o qualcosa del genere in questo modo) per permettermi di raggiungere i miei bisogni.
Activator.CreateInstance(Type, Object[])
Stefan, il problema è esattamente quello che scrivi alla fine: devo fornire un oggetto complesso che viene istanziato in fase di runtime. Non c'è modo di fornirlo tramite la configurazione XML. – Simone
Non è possibile creare un'istanza di questa classe basata su alcune stringhe di parametri? –
No, devo passare un altro oggetto esistente. – Simone