Cascade Delete
Cascade Delete is used to delete dependent entities when their principal entity is deleted (e.g. Article -> Blog).
Default behavior
Confinity overrides the default delete behavior of entity framework for all entities inheriting from ConfinityEntity in order to avoid DeleteBehavior.Cascade. Entities inheriting from ManyToManyBase get DeleteBehavior.ClientCascade, all othersDeleteBehavior.Restrict. This can be overridden by implementing a IPersistenceConfiguration<T> for your entity type.
ClientCascade
When working with entities inheriting from ConfinityEntity that should use cascade delete, you must use DeleteBehavior.ClientCascade. This is enforced by Confinity to ensure that the history for your entities can be updated correctly for each deleted entity.