Работают на aspnetboilerplate, имеют следующий вид кода в app-service, Unit Of Work не работает должным образом после удаления, если возникает ошибка, без выполнения данных unitOfWork.Complete (), уже удаленных из базы данных.
using (var unitOfWork = _unitOfWorkManager.Begin())
{
//delete all items in db....
var response = _grouppermissionRepository.HardDelete(p => p.GroupId == groupId);
foreach (var item in pageGroupPermissions)
{
if (item.IsChecked == true)
{
var grouppermissionObj = new Entities.Setup.GroupPermission()
{
CompanyId = null,
GroupId = item.GroupId,
IsActive = true,
IsDefault = true,
IsDeleted = false,
PageId = item.PageId,
Permission = item.Permission,
TenantId = 2
};
groupPermissions.Add(grouppermissionObj);
}
}
_grouppermissionRepository.GetDbContext().AddRange(groupPermissions);
unitOfWork.Complete();
}