ASP .Net MVC 2 настраиваемая вспомогательная сетка не отправляет модель в действие контроллера - PullRequest
0 голосов
/ 04 апреля 2011

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

В основном мой вид выглядит следующим образом:

<% using (Html.BeginForm("UpdateValues", "Home", FormMethod.Post)) { %> 

    <%= Html.MyGrid(Model)%>

    <input type="submit" value="Update Values" />

<%} %>

Но когда янажмите на кнопку отправки, все значения в модели равны нулю.

Вот как выглядит контроллер:

    [HttpPost]
    public string UpdateValues(AssignmentResultsVm assignmentResults)
    {
        //..... do something
    }

Как я могу заставить эту работу работать?

Заранее спасибо.

1 Ответ

0 голосов
/ 04 апреля 2011

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

Это делается путем индексации свойства name данных, которые вы привязываете, следующим образом:

<form method="post" action="/Home/Create">

    <input type="text" name="[0].Title" value="Curious George" />
    <input type="text" name="[0].Author" value="H.A. Rey" />

    <input type="text" name="[1].Title" value="Code Complete" />
    <input type="text" name="[1].Author" value="Steve McConnell" />

    <input type="submit" />
</form>

Вы можете сделать это за вас с помощью функции EditorTemplates asp.net mvc, которая проиллюстрирована в этой статье .

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