2011-03-26 3 views
1

В моем бизнес-домене мне нужно что-то сделать с n -м дочерним объектом, который вставлен для данного родительского объекта. Так, например, некоторые бизнес-действия следует вызывать после ввода 100-го, 200-го и 300-го детей.NHibernate - порядковые номера для дочерних объектов

На данный момент у меня есть идея добавить числовое число для детей, поэтому первый ребенок (для данного родительского объекта) получает 1, второй получает 2, ... и так далее. Как это может быть достигнуто с помощью NHibernate? Или, может быть, есть лучшие способы достижения моих целей.

Благодарим вас за ответы и идеи.

С наилучшими пожеланиями Лукаш

ответ

1

Вы можете сопоставить коллекцию как <list> ... так что индекс детей сохраняется.

Затем вы можете использовать метод AddChild для добавления элементов, чтобы вы могли выполнить пользовательскую логику, когда достигнете n-го дочернего элемента.

+0

Я пробовал следующее сопоставление «HasMany (x => x.Children) .AsList (index => index.Column (« Position »)). Cascade.All(); ' и проблема в том, что после вставки ребенка его свойство «Позиция» не обновляется. Можно ли это исправить? – GUZ

+0

@GUZ: индекс не привязан к свойству; используйте 'Children.IndexOf (child)' для его извлечения. –

+0

Спасибо - я думаю, это решает мою проблему :) – GUZ

Смежные вопросы