4 sql-server sqlite nhibernate unit-testing in-memory
我正在尝试实现这个解决方案: NHibernate-20-SQLite-and-In-Memory-Databases
唯一的问题是我们有这样的hbms:
<class name="aTable" table="[dbo].[aTable]" mutable="true" lazy="false">
Run Code Online (Sandbox Code Playgroud)
与[dbo]表中的名字,因为我们正与MSSQL工作,而这并不SQLite的工作.
我在rhino-tools-dev组中发现了这个帖子,他们谈到的只是从映射中删除模式,但在NH2上似乎没有classMapping.Schema.
有一个classMapping.Table.Schema,但它似乎是只读的.例如,这不起作用:
foreach (PersistentClass cp in configuration.ClassMappings) {
// Does not work - throws a
//System.IndexOutOfRangeException: Index was outside the bounds of the array.
cp.Table.Schema = "";
}
Run Code Online (Sandbox Code Playgroud)
[dbo](我试过attach database :memory: as dbo,但这似乎没有帮助)?我们在SQLite上遇到了太多问题,最终迫使我们切换到SQL Express.我记得的问题:
总而言之,基于SQLite的单元测试远不能最终代表您在PROD中使用MS SQL Server时遇到的问题,因此会破坏整体单元测试的可信度.
我们使用 Sqlite 来运行 NH 2.0.1 的单元测试。事实上,我并没有遇到这个问题。我只是没有指定 dbo,我认为它是 SqlServer 上的默认值。
顺便说一句,配置文件中有一个default_schema参数。这实际上是数据库名称,但您可以尝试将 dbo 放在那里,当然仅适用于 SqlServer 配置。
| 归档时间: |
|
| 查看次数: |
4107 次 |
| 最近记录: |