断开对象与 NHibernate 会话的连接

发布于 2024-10-20 06:26:22 字数 229 浏览 2 评论 0原文

在我的 nhibenate 会话中,我使用 AutoMapper 映射对象,并在 afterMap 操作中创建该对象的新实例,因为我从数据库中提取对象以进行属性比较。 因此 AutoMapper 创建具有相同 ID 的一个对象的两个实例。 当我尝试提交会话时,我收到错误消息,我必须使用相同的 ID 来反对。

所以我想在属性比较后断开我提取的对象。 之后我就可以提交会话了,

我该怎么做?

谢谢!

In my nhibenate session I Mapping object with AutoMapper and in the afterMap action i create new instance of the object because I extract the object from the DB for properties compare.
So The AutoMapper create two instances of one object with the same ID.
When I try to commit the session i get error that i have to object with the same ID.

So I Want to disconnect the object that I extract after the properties compare.
After that I will can commit the session

How I do that?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

就像说晚安 2024-10-27 06:26:22

您可以使用 session.Evict(persistentObject) 从会话中逐出持久对象。这将从一级缓存中删除该对象,从而允许您刷新会话。

You can use session.Evict(persistentObject) to evict a persistent object from the session. This will remove the object from the 1st level cache, thus allowing you to flush the session.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文