Связующие модели ASP.NET MVC. Вызов контроллера с параметром массива объектов - PullRequest
2 голосов
/ 20 июля 2009

Я хотел бы иметь следующую подпись контроллера MVC.

public ActionResult Create(Persons[] p)
{

}

Возможно ли иметь что-то подобное?

EDIT: Допустим, я хотел бы получить массив объектов person, отправив список имен, разделенных специальным символом. Например я отправляю форму

<form>
   <input name="person_name">Max|Alex|Andrew</input>
</form>

Полагаю, это должно быть сделано путем реализации интерфейса IModelBinder, но я не нашел ни одного примера, как это сделать.

Ответы [ 4 ]

3 голосов
/ 20 июля 2009

О, я нашел, как это сделать.

В файле Global.asax в функции Application_Start () должно быть написано:

ModelBinders.Binders(typeof(Person[])) = new PersonBinder();

Таким образом, пользовательское связующее регистрируется.

2 голосов
/ 20 июля 2009

Да. См. этот вопрос , чтобы узнать, как связать коллекции с помощью DefaultModelBinder.

0 голосов
/ 20 июля 2009

вам может понадобиться поиграть с пользовательским управлением в Invoker .

или просто обычное связующее для моделей

Andrew

0 голосов
/ 20 июля 2009

Я думаю, что такие вещи будут работать

<input type="text" name="Person[1].name" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...