private void ConfigureExceptionHandling()
{
var configurationSource = new DictionaryConfigurationSource();
var builder = new ConfigurationSourceBuilder();
builder.ConfigureExceptionHandling()
.GivenPolicyWithName(DeletePolicy)
.ForExceptionType<Exception>()
.ThenNotifyRethrow()
.ForExceptionType<NHibernate.Exceptions.ConstraintViolationException>()
.WrapWith<DeleteConstraintException>()
.UsingMessage("Cannot delete object.")
.ThenThrowNewException();
builder.UpdateConfigurationWithReplace(configurationSource);
var configurator = new UnityContainerConfigurator(this.Container);
EnterpriseLibraryContainer.ConfigureContainer(configurator, configurationSource);
}