【发布时间】:2013-06-12 19:29:35
【问题描述】:
我正在使用带有 SQL 查询的 NHibernate 来填充一些实体对象。
我有一个 Item 对象,它引用了一个 User 对象(表示 Item 的所有者)
class Item
{
public User User;
}
我的 SQL 查询是(它实际上更复杂,这就是为什么我不能使用 HQL,但我从这个开始是为了确保 AddJoin/AddEntity 工作正常):
SELECT {i.*}, {u.*}
FROM Item i INNER JOIN User u ON (i.UserId = u.Id)
WHere i.Id = 5
这是我的代码:
var x = session.CreateSQLQuery(sql)
.AddEntity("i", typeof(Item))
.AddJoin("u", "i.User")
.List();
当我运行它时,我得到一个二维数组。数组中的每个项目都包含一个 Item 对象(已初始化 User 属性)和 User 对象本身。
我错过了什么?我希望获得一个初始化了 User 属性的 Item 对象列表(这是我解释文档的方式)。
【问题讨论】:
标签: nhibernate