NHibernate:使用SchemaExport重新创建数据库

| 我有一个关于正确处理数据库重新创建的问题。 在我的开发环境中,我经常通过使用
_schemaExport.Drop(true, true);
_schemaExport.Create(createResult, true);
(我必须注意,我使用了hilo生成器。)在重新创建数据库之后,有时由于\“
Cannot insert duplicate key...
\”异常而导致新实体的保存失败。 我的问题: 我是否必须重新初始化会话工厂(甚至可能是会话)以正确地与新的使用hilo的数据库同步?还是让它按原样工作? 任何提示表示赞赏! g Warappa     
已邀请:
我想肯定您必须在重新创建数据库后创建一个新会话。另一种选择是在重新创建数据库之前清除现有的数据库。 重新创建数据库后,ID生成器将从头开始。这可能导致某些生成的ID与先前存在的会话中另一个对象的ID相同。因此,您会收到重复的键错误。     

要回复问题请先登录注册