2012-10-02 109 views
0

我在我的數據庫的單個列中有一個數組。 Postgres裏,它看起來是這樣的:在NHibernate中映射數組

orientation double precision[] 

其中 '方向' 是列名。 如何用C#映射它?

< property name="Orientation"/>在我的hbm.xml文件中沒有做這項工作。 我在C#類包含字段:

public virtual double[] Orientation { get; set; } 

這給了我一個例外:

無法在現場Orientat9_0_鑄鉛字雙[]將 類型SerializableType的價值。請檢查以確保映射爲 正確,並且您的DataProvider支持此數據類型。

並且還這樣:

無法轉換類型的對象 'System.Double []' 鍵入 'System.Byte []'。

我不想在我的數據庫中創建任何額外的表。

+0

看這個:http://stackoverflow.com/questions/1746414/how-configure-nhibernate-to-map-to-an-array-if-there-is-no-index-in-the-table –

回答

0

您將需要編寫自己的IUserType來處理此問題。

+0

我嘗試過,但未能如願。你能爲此提供一些代碼嗎?這是我縮小到(注意我的數組總是包含6個元素): http://pastebay.net/1149297 – jacek11