我正在使用localdb数据库来检查我的映射是否正常工作(我正在使用nhibernate + fluent nhibernate)。现在,我有一个相当复杂的结构,其中一些项目在几个“聚合”之间共享。我已经配置了聚合,以便它的集合不会被懒惰地加载,我开始在其中一个单元测试中获得事务锁。现在,如果我对sql server运行相同的代码,一切正常。有谁知道这两个版本之间在锁定方面是否有任何重大差异?
顺便说一句,我的映射测试包含在事务中,这些事务在测试结束时自动回滚。这是我正在尝试执行的其中一个测试的示例:using (var session = GestorLigacoes.FabricaSessoes.OpenSession()) {
using (var tran = session.BeginTransaction()) {
var area = Area.Nova(new NovaArea(new Acao("luis.abreu"), "Teste", "Area de testes"));
session.Save(area);
session.Flush();
var secretaria = new Secretaria("Secretaria", "SEC", new Acao("luis.abreu"));
secretaria.AdicionaArea(new AdicionaArea(new Acao("luis.abreu"), secretaria.Versao, area));
new PersistenceSpecification<Secretaria>(session)
.VerifyTheMappings(secretaria);
tran.Rollback();
}
}
感谢。
此致 路易斯