2011-11-22 28 views
0

我已經使用了這個廣泛的,但我找不到任何好的例子: 什麼樣的集合類型可以使用最好的,如果我需要持久與具有行號的NHibernate集合?我需要能夠插入,追加和刪除行以及向上或向下移動列表(也可以拖動位置5到行位置3的行)。有沒有任何與行號屬性一起使用的列表?我用了一個列表<>來進行持久化,但是我的同事用另一個列表包圍了它,以便按順序存儲這些項目。我想擺脫第二個名單。如何實現一個需要用NHibernate持久化的行號的集合?

任何提示都是值得歡迎的。

問候,泰德

回答

2

如果位置從0開始,並沒有任何漏洞,你可以只使用代碼IList<>,並在映射<list>。你不需要這種方式的單獨propery,它將被映射爲<index column="pos"/>。您不需要第二個列表或任何其他代碼進行排序。

否則使用ICollection<>的代碼映射爲<set><bag>。那麼你需要一個你必須管理自己的職位。

+0

無論如何,我需要自己管理它,因爲我需要能夠自己重新排列列表(最終用戶)。 – TedOnTheNet

+0

你也可以用'IList <>'重新排列:'var temp = list [i]; list [i] = list [j];列表[j] =臨時;' – Firo

相關問題