log4net写入sqlite
以前用log4net都是写在文本文档中,今天想试试写进sqlite,网上搜了一堆,无非就是加个ADONetAppender,但是试来试去都不好用,气死了,这里总结下其他文章没提到的坑
1.除了要把下载的sqlite官网下载System.Data.SQLite.dll引入程序,还要把SQLite.Interop.dll也放到bin/debug下,否则不好用,如果用nuget包安装就没这事
2.ADONetAppender里面的<connectionType value="System.Data.SQLite.SQLiteConnection, System.Data.SQLite, Version=1.0.118.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139" />
其中version 一定要写成和下载的System.Data.SQLite.dll版本一样,System.Data.SQLite.dll的版本右键-属性-详细信息-文件版本查看。或者直接就不要,写成<connectionType value="System.Data.SQLite.SQLiteConnection, System.Data.SQLite" />
也好用。
3.ADONetAppender里面的bufferSize 我下载的ADONetAppender模板里面默认写的是<bufferSize value="100" />
,这个最坑,要攒够100条(大约)log,数据库中才有数据,这个要改成1才实时有数据,<bufferSize value="1" />
真坑