Jay-
Если вы используете Fluent NHibernate, вы можете установить это либо в своей реализации IHasManyConvention, либо в IReferenceConvention (если используете соглашения).
Cascade.SaveUpdate () должен распространять сохранения и обновления, но оставлять оставшиеся дочерние объекты при удалении родителей.
В стандартных файлах NHibernate HBM я считаю, что тег для сумки должен выглядеть следующим образом:
<bag cascade="save-update" name="EntityName"> ... </bag>
ОБНОВЛЕНИЕ: Вот информационный пост Айенде на тему сирот дочерних объектов и различий с каскадными значениями.