Удалить дочерние объекты очень просто - просто удалите их из коллекции, а затем сохраните родительский объект. Коллекция должна быть сопоставлена с all-delete-orphans.
parent.Children.Clear();
session.Save( parent );
// or
parent.Children.RemoveAt(0);
session.Save( parent );
Вы также можете сделать это без вызовов Save (), если ваш FlushMode не имеет значения Never.
session.BeginTransaction();
parent.Children.Clear();
session.Transaction.Commit();
Используя абстракцию @Cris UnitOfWork это может выглядеть так:
using (var uow = new UnitOfWork()) {
parent.Children.Clear();
}