使用NHibernate,是否可以使用查询结果填充现有对象,而不是返回新实体?例如:
var foo = new Foo();
session.GetById(foo, id);
答案 0 :(得分:0)
嗯......有点......如果你的对象是瞬态的,你可以Session.Get<Foo>(id)
另一个对象进入NH身份地图,然后手动将其字段复制到你的对象中。如果您的对象是持久的(附加到会话),您可以Session.Refresh(foo)
从数据库中重新检索它。
我猜你可以尝试在你的瞬态实例上做Session.Lock来重新连接到会话然后Session.Refresh来刷新它......应该工作......至少在理论上......