Obligar a NHibernate a eliminar en cascada antes de insertar
Tengo un objeto padre que tiene una relación de uno a muchos con unISet
de objetos secundarios. Los objetos secundarios tienen una restricción única PageNum
yContentID
: la clave externa para el padre).
<set name="Pages" inverse="true" cascade="all-delete-orphan" access="field.camelcase-underscore">
<key column="ContentId" />
<one-to-many class="DeveloperFusion.Domain.Entities.ContentPage, DeveloperFusion.Domain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
</set>
l problema que he encontrado es si elimino unContentPage
elemento de la colección principal, y luego agregue una nueva con la misma clave única dentro de la misma transacción ... Obtiene una violación de restricción única porque NHibernate intenta realizar la inserciónantes d la eliminación.
¿Hay alguna forma de obligar a NHibernate a realizar la eliminación primero?