私はいくつかのジェネリックコレクションを持っています、例えば、
IList<MyClass>
IList<MyOtherClass>
1)このためにlog4net IObjectRendererを作成するにはどうすればよいですか?私がこれまでに得たものは次のとおりです。
public class ListOfMyClassRenderer : IObjectRenderer
{
public void RenderObject(RendererMap rendererMap, object obj, TextWriter writer)
{
try
{
var myList = obj as List<MyClass>;
int no = 1;
foreach (MyClass entry in myList)
{
writer.Write("Entry {0}: PropertyA={1} PropertyB={2}\n",
no++,
entry.PropertyA,
entry.PropertyB);
}
}
catch (NullReferenceException ex)
{
writer.Write(SystemInfo.NullText);
}
}
}
2) Log4Net.configファイルでこれをどのように構成しますか?私が持っている:
<renderer renderingClass="MyNamespace.ListOfMyClassRenderer" renderedClass="System.Collections.IList<MyClass>" />
3)最後の質問。各エントリをlog4netプロパティに書き込みたい場合、これをどのように行いますか?RendererMapを使用する必要がありますか?