Как проверить и избежать удаления из записей, которые используются другой таблицей записей? - PullRequest
0 голосов
/ 24 октября 2019

Я использовал Generic-репозиторий и UnitOfWork в своем основном проекте .Net. а также я использую мягкое удаление в моей инфраструктуре.

Я хотел бы иметь общую подпрограмму или метод или шаблон, чтобы проверить, используется ли эта текущая запись, которую пользователь решает удалить, другой записью в таблице, чтобы позволитьего удалите (но не вручную и проверьте каждую таблицу один-один) Например, у меня есть персоны и таблица контактов, персона-A имеет контакт, а персона-B не имеет. Я хотел бы, если пользователь пытается удалить систему Person-A, не позволяйте ему, так что только пользователь может удалить person-B. Мой код будет примерно таким:

 public ResultContainer DeletePerson(long id, long userId)
    {
        try
        {


/////Here I will check
            if(!HasDeletePermission(id))
               {
                   return new ResultContainer(false, "You cant delete this person!!!");
                }
            Person person = GetPersonById(id);
            unitOfWork.PersonRepository.Delete(id, userId);

            unitOfWork.Save();
            return new ResultContainer(true, "");
        }
        catch (Exception ex)
        {
            return new ResultContainer(false, ex.ToString());
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...