我试图在我的单元测试中使用 Sqlite 作为带有 ServiceStack ORMlite 的内存数据库。
如果我使用 SQLite 保存到文件来运行我的测试,即。使用连接字符串
"Data Source=|DataDirectory|unittest.db;Version=3;"
,它工作正常,并且由 ServiceStacks 生成了很好的身份验证表
userRepository.CreateMissingTables();
但是,当我尝试通过使用此连接字符串将 SQLite 用作内存数据库时
":memory:"
我说的时候有一个例外
SQLite error
no such table: UserAuth
我第一次尝试通过这样做来获取用户
userRepository.GetUserAuthByUserName(...)
这是在我调用 userRepository.CreateMissingTables() 之后,如果我切换到使用带有文件数据库的 SQLite,它工作正常。有谁知道问题可能是什么?(由于在 Ormlite 3.9.4 中对 ORM lite 版本 1.0.65.0 的错误引用,我不得不降级到 ORMLite 版本 3.9.0)