我在Fluent NHibernate 项目中使用 SQLite ( system.data.sqlite v. 1.0.60.0 )。
我有一个程序写入数据库,另一个程序从中读取。有时,我会遇到 SQLITE_BUSY 异常,我需要解决这个问题。
我发现了几个 Google 对sqlite_busy_timeout的引用,这(如果我理解正确的话)将导致 SQLite 在抛出异常之前重试。这可能足以满足我的需求。
但是,这似乎不在 system.data.sqlite 程序集中。
当我使用对象浏览器搜索SetTimeout时,我得到了两个结果:
System.Data.SQLite.SQLite3.SetTimeout(int)
System.Data.SQLite.SQLiteBase.SetTimeout(int)
但我似乎无法在我的代码中使用它们——它们没有出现在 Intellisense 中,并且 VS2008 显示 SQLite3 的红色下划线,并显示消息“无法在此处访问内部类”。
谁能给我一个示例(在 C# 中)显示此方法的确切语法?
或者这甚至是正确的方法?我可能会在我的代码中检查 SQLITE_BUSY,但也没有找到任何证明该方法的好例子。
最后,Fluent NHibernate 或 NHibernate 是否有任何机制来提供对 SQLite 数据库的简单共享访问?