Как обработать много полей ввода формы с помощью ASP.NET MVC - PullRequest
2 голосов
/ 01 мая 2009

Я пишу приложение для опроса, и у меня есть форма, которая может содержать сотни полей ввода. Как бы я написал контроллер для обработки этой формы? Я не могу указать каждый вход в качестве параметра для контроллера, это было бы нереально.

Я узнал о MVCToolkit и методе UpdateFrom (), но разве это правильный путь? Если да, то как мне установить MVCToolkit в моем приложении?

Ответы [ 2 ]

7 голосов
/ 01 мая 2009

Вы также можете принимать коллекции в качестве параметров в действии.

public ActionResult TheAction (string[] answers) {

}

HTML:

<input type="text" name="answers[0]" value="" />
<input type="text" name="answers[1]" value="" />
<input type="text" name="answers[2]" value="" />
<!--and so on -->

Связыватель модели по умолчанию автоматически заполнит массив ответов в вашем действии значениями, введенными в форму.

2 голосов
/ 01 мая 2009

Это на самом деле намного проще, чем это. Вам просто нужно использовать объект с именем FormCollection.

public ActionResult MyFormUpdate (int id, FormCollection form) {
    // do form updates
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...