NHibernate 关联类而不从存储库中提取

Posted

技术标签:

【中文标题】NHibernate 关联类而不从存储库中提取【英文标题】:NHibernate associate class without pulling from repository 【发布时间】:2010-07-06 19:02:44 【问题描述】:

我确定我以前做过这个,但我不记得是怎么做的了。我有 2 个班级,比如 Person 和 Company。我正在实例化一个新 Person 并希望对其进行设置,以便当我将其保存到存储库时,它将与 A 公司关联。A 公司已经存在,但我不想从数据库中提取整个内容,所以我可以写:

person.Company = CompanyA;

如何设置 Person 的 Company 属性,使其与 CompanyA 相关联,而无需从数据库中提取 CompanyA?顺便说一句,我绝对不想映射 CompanyID 属性!

【问题讨论】:

【参考方案1】:

使用ISession.Load(id)。 Ayende 有一篇关于Get vs. Load 的好帖子。

person.Company = session.Load(companyAId);

【讨论】:

感谢您的快速回复。显然我在 6 分钟内不能接受你的回答,但我会在可以的时候接受:)。

以上是关于NHibernate 关联类而不从存储库中提取的主要内容,如果未能解决你的问题,请参考以下文章

从 SVN 存储库中删除文件而不删除本地副本

如何仅删除远程存储库中的文件? [复制]

NHibernate Definitive Cascade 应用指南

将参数从jsp页面传递给java类而不使用servlet [重复]

NHibernate + Fluent NHibernate 异常

NHibernate 2 + Fluent Nhibernate 中等信任