ASP.NET MVC Использование моделей представлений в разных представлениях - PullRequest
1 голос
/ 01 апреля 2012

У меня есть 2 просмотра клиента, один для создания и один для редактирования.Я использую одну и ту же модель представления клиентов для обоих.Я хочу, чтобы при добавлении не требовалось указывать «поле клиента», но не редактировать.

Если я добавлю атрибут обязательного поля в свойство модели представления, то оба представления помечают «Клиент №» как требуется (как выможно ожидать).

Есть ли встроенное решение для решения этой проблемы, или мне нужно будет создать 2 отдельные модели представлений, одну с атрибутом, а другую без.

Спасибо

Ответы [ 3 ]

1 голос
/ 01 апреля 2012

Это похоже на этот вопрос .

Я бы настоятельно рекомендовал вам настроить 2 модели просмотра для редактирования и создания действий. Это намного чище. Последний ответ в приведенной мной ссылке делает обходной путь и отключает ошибки в ModelState.

0 голосов
/ 02 апреля 2012

Просто концептуальный тип предложения.Удалите необходимый атрибут проверки из вашей модели.В вашем контроллере сделайте параметр необязательным и в зависимости от того, какое действие (Изменить или Создать), вы вручную добавите в некоторый тип проверки.

Проверка JQuery может использоваться для проверки с клиента на основевведите, если вы идете к ручному маршруту.

0 голосов
/ 02 апреля 2012

Как требуется № клиента при создании, но не редактировании?

Если вы создаете его, ему нужен номер, а когда вы его редактируете, номер все еще там.

Вы имеете в виду, что они могут удалить номер клиента при редактировании?Или вы имеете в виду, что вы хотите, чтобы Клиент не.быть недоступным для редактирования при редактировании?

Если это последнее, тогда вы можете оставить номер клиента в соответствии с требованиями, вы просто отображаете номер клиента в своем представлении редактирования (не в текстовом поле) и используете скрытый ввод для ввода номера, чтобы он был опубликован.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...