Допустим, у меня есть объект под названием User, у которого много сообщений. Моя служба выглядит так, чтобы удалить сообщение:
void DeletePost(int postId, int userId);
Где мой код проверки? (убедитесь, что у пользователя есть разрешение на удаление). Должен ли я сделать это в репозитории с 1 вызовом базы данных? Или я должен выполнить эту проверку на уровне службы, где я делаю 2 вызова:
- Получить пользователя по имени пользователя.
- Вызов удалять после того, как пользователь выполнил проверку.
У меня будет 2 репозитория, 1 для пользователя и 1 для сообщения, каждый из которых выглядит следующим образом:
// From the PostRepository.
void Delete(int postId); //May have to add a userId param if I do validation in repository
//From the UserRepository.
User GetUser(int userId);