log4net和system.data.sqlite

有谁知道如何设置log4net以使用system.data.sqlite提供程序的一个很好的例子?

我最近一直在玩它,我以为我一切都在工作。 它成功连接到数据库并“写出”它。 但是,当我查看表数据时,它实际上从未提交日志。

确保您设置了以下参考:

  • log4net(显然)
  • System.Data.SQLite(你可能会忘记这个)

在Visual Studio中关闭项目并在文本编辑器中重新打开.csproject(或VB的等效项),然后查找引用部分。 我看起来像这样:

 False ..\..\..\..\externals\log4net-1.2.10\bin\net\2.0\release\log4net.dll    3.5   False ..\..\..\..\externals\sqlite.net\System.Data.SQLite.dll  

请注意SQLite的参考。 在这种情况下,您需要以下文本: System.Data.SQLite, Version=1.0.65.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139这是托管ADO.net兼容的sql连接类的程序集的全名,这实际上是log4net依赖于。

在Visual Studio中重新打开项目,确保您具有.config文件并在XML文本编辑器中打开它。 将配置文件粘贴到此处比解释所有内容更容易。 请注意,您将在此处使用程序集名称。

把它放在configSections XML节点中:

  

作为配置的直接XML子节点,请放置以下XML部分:

                                             

作为最后一步,您必须确保您指定的sqlite db文件预先存在于指定位置。 一种方法是创建数据库并将其作为要复制到输出文件夹的资源附加。 确保它与您指定的名称相同(在本例中为log4net.db

今天我正在搜索同样的东西,发现http://sqlite.phxsoftware.com/forums/t/1667.aspx

这是来自成功使用System.Data.SQLite ADO提供程序(而不是官方apache文档中记录的另一个)的人的示例配置。

希望它能引导你走向正确的方向。