2009-04-29 48 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