Я обновляю веб-сайт в третий раз за 2 года, похоже, что это будет происходить все время, и несколько веб-сайтов используют одну и ту же БД. Я хочу использовать один и тот же код для всех из них и сделать его легко обновляемым в будущем. Поэтому я планирую написать несколько интерфейсов, а затем поместить корпоративный логин в службу, чтобы обеспечить согласованность данных и добавить некоторое модульное тестирование.
Итак, я просматриваю свои текущие репозитории и не уверен, что должно быть в моем интерфейсе, а что должно быть в моем сервисе.
Например, у меня есть метод Add - ежу понятно, у меня есть Add в интерфейсе и add в Сервисе.
Затем у меня есть метод AuthenticateAccountManager, который принимает 3 параметра, должен ли он быть в обоих сервисах или только в Сервисе, и имеет простой метод Get в моем интерфейсе (например, по имени пользователя), а затем выполняет проверку по двум другим свойствам в Сервисе. .
У меня также есть QualifyPartner, который устанавливает для bool значение true, должно ли это быть только в Сервисе и снова иметь простой метод Get в моем Интерфейсе, пытаясь сохранить его как можно меньшим?