我正在尝试使用Frank A. Krueger的SQLite.net PCL,并尝试将其用作Android应用程序和ASP.NET MVC Web应用程序的通用数据层。在Android使用方面我有一些成功,但是在尝试将其用于Web应用程序时,我遇到了以下异常:
然而,似乎根本没有调用
有没有办法在ASP.NET Web应用程序中运行SQLite.net PCL,或者我需要寻找不同的数据源?
You need to call SQLitePCL.raw.SetProvider(). If you are using a bundle package, this is done by calling SQLitePCL.Batteries.Init()。
因此,在我的控制器构造函数中,我调用了这个Init
函数,同时进行数据库初始化。SQLitePCL.Batteries.Init();
var dbPath = Path.Combine(Constants.DataDir, "SdgData.sqlite3");
var sqliteConnection = new SQLiteConnection(dbPath);
var sdgSqlRepository = new SdgSqlRepository(sqliteConnection);
crm = new CrmManager(sdgSqlRepository);
然而,似乎根本没有调用
Init
函数——我在它和调用Combine
的下一行上都设置了断点,第二个断点被触发了,而第一个却没有被注意到。(可能是因为Init
是PCL库调用,不适用于ASP.NET平台?)有没有办法在ASP.NET Web应用程序中运行SQLite.net PCL,或者我需要寻找不同的数据源?