Ich verwende log4net mit C#, um meine App zu protokollieren.Es ist möglich,% Eigenschaft {PropertyName} dynamisch festzulegen?
Ich weiß, dass ich es wie folgt tun:
GlobalContext.Properties["PropertyName"] = "NewValue";
XmlConfigurator.Configure();
Und es funktioniert. Aber es ist nicht so dynamisch, da ich Configure erneut aufrufen muss, um einen neuen Wert zu setzen. Gibt es eine Möglichkeit, einen Eigenschaftswert vor dem Aufruf von ILog.Info festzulegen?
So etwas:
//here I set a new value for %property{PropertyName}
log.Info("Value to log");
//here I set a another one for %property{PropertyName}
log.Info("Value to log 2");
Danke, aber das habe ich schon so geschafft. Ich brauche etwas flexibleres. –
@ ramires.cabral - vielleicht sagen Sie uns, was Sie brauchen? – Joe
Ich möchte eine Eigenschaft ändern, jedes Mal, wenn ich ILog.Info aufrufen. Ich möchte Dateien, die auf bestimmten Ereignissen in meiner App basieren, umbenennen. Mit ThreadContext.Properties ist es möglich, aber ohne Aufruf von Configure. Und wenn ich es in mehreren Aufgaben ausführe funktioniert es nicht richtig. Sie sehen, ich habe keine Erfahrung mit log4net. Vielleicht ist das der falsche Ansatz. –