nhibernate - 为新对象分配 ID

标签 nhibernate oop repository

我有一个简单的域对象 Movie,具有以下构造函数:

public Movie(string title, int year = 0, Genre genre = Genre.None, int length = 0, IEnumerable<string> actors = null) { ... }

没有 ID 参数,因为无法预先知道 ID 是什么。 Movie 确实有一个 int Id 属性。

这个对象将被发送到我的使用 NHibernate 的 MovieRepository。存储库有一个添加电影的方法:void AddMovie(Movie movie) { ... }

假设我想在插入对象后与其进行交互,也许是为了显示数据或更改属性。我需要设置了 Id 属性的对象,或者需要知道数据库生成的 ID。

我应该更改 AddMovie 方法以返回设置了 ID 的同一部电影,还是应该返回结果 ID 值?或者也许还有其他什么?

最佳答案

调用 Session.Save()Session.SaveOrUpdate() 后,id 将返回给您以供将来查询。

另请参阅此 question .

关于nhibernate - 为新对象分配 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3587129/

相关文章:

java - 本地存储库上的 JGIT 推送历史记录不会更新

ios - 如何将 ipa 文件部署到 artifactory?

c# - nhibernate中的HasOne和References有什么区别?

c# - 如何在混合模式下对存储库使用依赖注入(inject)

c# - DDD : Should Persistence Logic belong to Infrastructure Layer?

java - 持久化 API 的类注释与接口(interface)

javascript - 使用javascript OOP中的方法动态获取属性

nhibernate - 如何使用 QueryOver api 从限制中定位别名?

使用 SQL 函数值从 SQL 到 NHibernate 查询

.net - SetFetchMode 调用被忽略