好了,現在我知道如何編寫自定義layoutRender傳遞價值NLOG定製LayoutRenderer
- 寫一個類MylayoutRender繼承LayoutRenderer,在課堂上,
- 覆蓋追加方法
註冊自定義layoutRenderer啓動時
ConfigurationItemFactory.Default.LayoutRenderers.RegisterDefinition("application", typeof(MyLayoutRenderer));
curently,我讀了配置
protected override void Append(StringBuilder builder, LogEventInfo logEvent)
{
var product = CommonMethods.ReadConfig("product");
builder.Append(product);
}
價值如何動態設置的值?
看起來像我所做的一樣:從配置文件(CommonMethods.ReadConfig(「product」);)讀取 – prime23 2012-03-01 06:04:24
你想做一些不同的事情嗎?我讀過這個問題的方式,我想你可能希望能夠配置LayoutRenderer,以便從配置文件中讀取任何值。通過將值名稱指定爲NLog.config文件中的LayoutRenderer的參數來實現這一點的LayoutRenderer的想法就是這樣做的。你還在找別的東西嗎?可能有更好的方法來做你想做的事。 – wageoghe 2012-03-01 14:37:48
對於遲到回覆感到抱歉。我想要做的是設置Append方法的值,但不給參數layoutRender。但由於我的自定義layoutRender(應用程序名稱)是一個常量,我只是硬編碼到SQL插入NLog.config中。再次感謝你。 – prime23 2012-03-05 06:25:18