2009-04-29 22 views
1

我不知道如何解释这一点。所以这里去...懒惰加载NHibernate的一部分记录

我想适合懒惰加载blob的方法描述here但我坚持只有一个表。

我有一个模式(固定,在遗留系统),它看起来是这样的:

MyTable 
    ID int 
    Name char(50) 
    image byte 

这是Informix和字节列是一个简单的大对象。现在通常我会用"SELECT ID, Name, (image is not null) as imageexists..."来查询表格,并在稍后处理blob加载。

我可以构造我的对象模型,使其具有两个不同的类(因此有两个不同的地图定义)来处理关系,但我怎样才能“愚弄”到使用同一个表来显示这种一对一关系?

回答

2

简答:你不行。

您可能需要将其映射两次或(我的首选)创建一个具有所需字段的DTO。在HQL你会这样做:

select new MyTableDTO(t.ID, t.name) from MyTable t 
+0

我不知道我理解数据传输对象的想法。我会尝试将这个想法应用到hibernatingrhinos的帖子中,并映射到同一张桌子上。 – hometoast 2009-04-29 13:13:12