Я уже прочитал NHibernate - Changing sub-types, и я не считаю это удовлетворительным для моей ситуации.Изменение подтипов в NHibernate
Моя система позволяет пользователям планировать задания. Расписания могут быть настроены с различными типами критериев расписания (Только один раз, Ежедневно, Еженедельно, Ежемесячно за месяцем месяца и Ежемесячно по неделям месяца). У каждого из них очень разные данные и поведение. Для пользователя совершенно правильно изменить расписание от одного типа критериев к другому.
Я попытался выполнить эту работу, захватив ранее сохраненный идентификатор расписания, создав новый экземпляр расписания с новым типом, установив id и сохраняя. Все данные были обновлены, как ожидалось, за исключением, разумеется, дискриминатора.
Изменение модели было бы абсолютным последним средством.
На данный момент я ищу сохранение новых критериев (с новым идентификатором) и обновление ссылок на него, а затем удаление старых критериев.
У кого-то есть лучшая идея?
Хм ... Я бы хотел попробовать, но у меня проблемы с отображениями дискриминаторов в Fluent-NHibernate. – Will