我有一个实体Account
,在正常情况下,它的 Guid Id 将由 NHibernate 生成。但是,我想对一些Account
ID 进行“硬编码”,这些帐户将在任何地方被引用并提供非常具体的功能。
我想在配置文件中定义这些对象,并带有预配置的 Guid Id,并且在启动我的应用程序时,检查这些帐户是否存在于数据库中。如果没有,我想按原样添加它们。如果它们在那里,我想覆盖数据库版本并保留配置文件中设置的属性。
我心想,这似乎ISession.Merge
是为了什么,但对象并没有持久化。然后我对自己想,这一定ISession.Persist
是为了,但这会引发一个异常,抱怨坚持一个分离的对象。 ISession.SaveOrUpdate
同样不会持久化对象。
我需要做什么才能在 NHibernate 中保留这些“预制”对象?