Отфильтруйте некоторое значение свойства в данных поста с помощью ASP.NET MVC 3 - PullRequest
0 голосов
/ 17 марта 2012

У меня есть модель, подобная следующей:

public class MyModel {

    [Required]
    public string Name { get; set; }
    public string Family { get; set; }
    [Required]
    public int Number { get; set; }
}

Так, например, в Edit View у меня есть 3 Editorfor() объектов, и мне интересно фильтровать данные постов на этой странице, на самом деле я хочуигнорировать Number поле и просто хочу опубликовать Name и Family Также мне нужно, чтобы проверки Number были активными. Один из способов - удалить свойство Number из MyModel и определить его вручную и написатьвсе сценарии проверки по своему усмотрению, но мне интересно знать, есть ли более простой способ в MVC.У кого-нибудь есть идеи?

Ответы [ 2 ]

1 голос
/ 17 марта 2012

Контроль всей этой проверки и привязки модели вручную слишком сложен и подвержен ошибкам.Вы должны использовать ViewModels

public class SomeSpecificViewModel
{
    [Required]
    public string Name { get; set; }
    public string Family { get; set; }
}

public ActionResult SomeSpecificAction(SomeSpecificViewModel model)
{
   //...
}

Теперь MVC будет проверять только Имя и Семейство

0 голосов
/ 17 марта 2012

Любое значение, не заполненное в представлении, не будет опубликовано в контроллере. Однако, если поле [Required] не заполнено, то ViewModel.isValid будет ложным.

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