我在嘗試理解log4net formName和textBoxName元素的配置時遇到困難。我一直在關注前面一個問題here登錄到文本框的log4net配置
具體我試圖創建一個包含一個文本框作爲記錄器
namespace foo {
public partial class LoggingControl : UserControl, IAppender {
private ILog _logger = LogManager.GetLogger(typeof(LoggingControl));
public LoggingControl() {
InitializeComponent();
}
public ILog Logger {
get {
return _logger;
}
}
public string FormName {
get;
set;
}
public string TextBoxName {
get;
set;
}
public void DoAppend(log4net.Core.LoggingEvent loggingEvent) {
textBox.AppendText(loggingEvent.MessageObject.ToString() + Environment.NewLine);
}
public void Close() {
}
}
}
在我的配置
我有
<log4net>
<appender name="Logger" type="foo.LoggingControl">
<formName value="MainForm"/> --- ###01
<textBoxName value="textBox"/> --- ###02
<root>
<level value="DEBUG">
<appender-ref ref="textbox">
</appender-ref>
</level>
</root>
</appender>
</log4net>
-
一個自定義用戶控件
- 被設置爲包含自定義控件 的表單的名稱,其中包含日誌文本框
- 設置爲自定義控件內部的文本框的名稱。
這是行不通的,我錯過了什麼?
請嘗試使用AppenderSkeleton並在config中使formName和textBoxName區分大小寫。希望這對你有所幫助。 – dotnetstep 2014-10-27 03:25:18
嗨Anik,我沒有看到一個AppenderSkeleton,使用最新的1.2.13-bin-newkey。 – mfc 2014-10-27 03:32:17