2011-10-04 91 views
1

我有一個包含,我試圖在FNH映射浮子的集合(IList的)的一類:如何使用Fluent NHibernate映射浮點集合?

class WeeklyHours { 
    public virtual Person Employee { get; set; } 
    public virtual WeekOfYear Week { get; set; } 
    public virtual IList<float> DailyHours { get; set; } 
} 

DailyHours構件被初始化爲7層的元件,一個用於每天的一個固定長度相應的一週。

如何將DailyHours映射到FNH中?我想保留"WeeklyHours"表中的所有內容,而不是創建"Hours"表和一對多關係。

我不能使用套裝或包,因爲訂單很重要(星期幾)。

任何想法?謝謝。

回答

0

爲什麼列表而不是數組?

public virtual float[] DailyHours { get; private set; } 

public WeeklyHours() 
{ 
    DailyHours = new float[7]; 
} 


Map(x => x.DailyHours); 

這會在WeeklyHours-table的列中創建數組的二元重新限制。

編輯:另一個選項是CustomUserType將數組序列化或反序列化到列。如果需要,我可以發佈映射

+0

你做了這個 - 直接映射浮點數組嗎?我使用的是FNH 1.0.0.629,該版本需要IList。早期版本的FNH在映射值類型集合 - IIRC時遇到了問題,這些問題在本版本中得到修復。你使用什麼版本? –

+0

我已經在生產代碼中映射了整數和雙精度數組。我用FNH 1.1和1.2 – Firo

+0

完美的作品,謝謝! – leahcimp

0

如果您使用的是流暢的NHibernate自動映射,這應該可以工作,不需要程序員的任何額外幫助。

相關問題