Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / В каком слое реализовать проверку данных для сохранения в БД / 2 сообщений из 2, страница 1 из 1
12.09.2017, 17:06
    #39519996
blest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каком слое реализовать проверку данных для сохранения в БД
На форме веб-страницы заполняются поля для создания какой-либо сущности (пусть будет сущность работник) - дара рождения, пол, профессия, ФИО и т.д. Нажимая на кнопку сохранить юзер ожидает либо сообщение об успешном сохранении, либо скопом все ошибки, допущенные при заполнении полей - возраст с 18 лет, пол только мужской, профессия определенной категории и т.д.

На каком уровне приложении производить данную проверку и возвращать ошибки, добавленные в ModelStateDictionary в данном случае.

Слои проекта стандартные:



Опять же мои варианты
1) Производить проверку в слое веб-приложения, сразу добавлять в ModelState, в случае успешной проверки вызывать DataService и производить запить данных в БД. Минус - зачем вообще тогда нужен слой DataService ?
2) Все проверки производить в слое DataService - но нужно как-то из него возвращать ошибки проверок, чтобы в веб-слое добавлять их в ModelState
3) судя по этой статье проверка выделяется в отдельный слой (я правда не пойму выделить это в отдельный слой или это тот же DataService) и сразу в нем наполнять ModelStateDictionary. Очень хороший вариант, но меня смущает - если я слой DataService будет использоваться в приложении WinForms или WPF - в них нет глобальной переменной ModelState

Как лучше сделать ?
...
Рейтинг: 0 / 0
12.09.2017, 17:14
    #39520002
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каком слое реализовать проверку данных для сохранения в БД
blestКак лучше сделать ?
Дочитать статью до конца :)
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / В каком слое реализовать проверку данных для сохранения в БД / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]