Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Валидация только определенных свойств / 5 сообщений из 5, страница 1 из 1
10.08.2017, 05:54
    #39503025
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Валидация только определенных свойств
В приложении проверку достоверности модели осуществляется путем указания атрибутов к каждому свойству модели. Указав их один раз в модели, они используются в любом методе действия, где необходима проверка данных модели. Например, у класса user есть свойства логин, пароль, ФИО, адрес. К каждому из них применяются определенные правила. При регистрации нужно лишь указать логин и пароль, а остальные данные заполнять уже в профиле. Однако проверка достоверности в методе действия регистрации применяется ко всем свойствам, из-за этого модель не проходит валидацию, например, верно отмечая, что поле "адрес" пустое, хотя его нет в форме регистрации. Как заставить проводить валидацию только по тем свойствам, которые заполняются у модели в форме регистрации?
...
Рейтинг: 0 / 0
10.08.2017, 07:17
    #39503034
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Валидация только определенных свойств
Алексей Шм.,

Единственным правильным вариантом здесь является создать две разные вью модели для регистрации и редактирования профиля.

Если хочешь заюзать одну и ту же модель для разных действий с разной логикой и валидацией, в попытке сэкономить ты огребёшь ещё больше проблем и потратишь больше времени на костыли.
...
Рейтинг: 0 / 0
10.08.2017, 07:32
    #39503039
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Валидация только определенных свойств
hVostt,

Вы имеете ввиду при регистрации использовать, грубо говоря объект класса user1, где только логин и пароль, а при авторизации отдавать расширенный user2?
...
Рейтинг: 0 / 0
10.08.2017, 07:36
    #39503041
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Валидация только определенных свойств
Алексей Шм.hVostt,

Вы имеете ввиду при регистрации использовать, грубо говоря объект класса user1, где только логин и пароль, а при авторизации отдавать расширенный user2?

Я имею в виду:

UserRegistrationViewModel — для регистрац
UserLoginViewModel — для входа/авторизации
UserProfileViewModel — для редактирования профиля

У каждой модели свои поля, своя валидация, своя логика. Это легко тестируется и сопровождается, даже если кажется, что это типа оверхед, это вовсе не так.
...
Рейтинг: 0 / 0
10.08.2017, 07:37
    #39503043
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Валидация только определенных свойств
hVostt,

Понял, спасибо!
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Валидация только определенных свойств / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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