[英]Logging to SQL Server in bulks using log4net
我正在使用log4net使用AdoNetAppender
将消息记录到SQL Server数据库。 我需要在批量中插入日志。 我已经尝试使用appender的batchSize
属性,但据我所知,结果是这样的:
conn.Open();
for (int i = 0; i < count; i++)
{
comm.ExecuteNonReader();
}
conn.Close();
这最终转化为一堆插入。 因此,如果我的批量大小是例如500,则将有500个连续插入。
我的目标是将插件插入1个插入语句中。 就像.NET的SqlBulkCopy
。
用log4net可以实现这个结果吗? 或者我是否必须实现自己的自定义appender才能这样做?
您必须编写自己的自定义appender,因为log4net不会开箱即用。 您可以从AdoNetAppender继承并覆盖virtual protected void SendBuffer(IDbTransaction dbTran, LoggingEvent[] events)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.