Я новичок в ASP.NET MVC и пытаюсь внедрить лучшие практики для приложений малого и среднего размера, использующих веб-сервис в качестве источника данных. Веб-сервис предоставляет следующие методы поддержки приложения:
- AuthenticateCustomer - возвращает идентификатор клиента, если действительный адрес электронной почты / пароль
- GetCustomer - возвращает сериализованный объект, содержащий информацию о клиенте
- Etc
Мой вопрос заключается в том, что все эти службы возвращают значения Success (bool) и Message (string) в зависимости от результата операции. Сообщение содержит описательную информацию, если произошла ошибка. Я не уверен, что вызов веб-сервисов относится к слою Repository, но я думаю, что важно иметь возможность передавать значения Success и Message через слои Repository -> Service -> Controller. Единственный способ, которым я могу думать об этом, - это засорять методы Repository без аргументов:
public int AuthenticateCustomer(string Email, string Password, out bool Success, out bool Message);
или создайте какую-нибудь оболочку, которая содержит предполагаемое возвращаемое значение (целое число) и значения Success и Message. Однако каждый метод веб-службы возвращает разные значения, поэтому универсальная оболочка не подходит. Кроме того, эти значения должны быть переданы через уровень Service, и просто кажется, что какая-то проверка происходит на уровне репозитория.
Любые мысли о том, как достичь:
1. Разделение проблем (проверка, доступ к данным через веб-сервис) при ...
2. Имеете возможность поддерживать обратную связь, полученную от веб-службы, и передавать ее до самого View?
P.S. - Извините за краткий вопрос. Немного сложно объяснить с какой-либо краткостью.