Я знаю, как найти грязные свойства с помощью NHibernate, но, похоже, он не работает для коллекций (т.е. выяснить, были ли элементы добавлены или удалены из коллекции). Кто-нибудь знает как?
var ipc = theEntity.TheCollection as IPersistentCollection; var isDirty = ipc.IsDirty;
Однако имейте это в виду (из документа XML):
Обратите внимание, что это надежно только во время цикла очистки, после того, как элементы коллекции загрязнены, проверены на моментальный снимок.
Извините, я не дам вам драгоценный пример. У меня нет открытой Visual Studio прямо сейчас, чтобы проверить это. Вам следует изучить метод NHibernate.Type.CollectionType.IsDirty.