ASP MVC 3 - Ajax.BeginForm не отправляет модель - PullRequest
0 голосов
/ 03 июня 2011

У меня есть 2 партиала на главном экране, каждый использует форму Ajax с включенным ненавязчивым javascript.

Первый фрагмент работает нормально и отправит свою модель на контроллер, и все будут довольны.Однако 2-й фрагмент никогда не отправляет модель контроллеру при отправке.

Они оба являются строго типизированными частичными представлениями, и оба используют Ajax.BeginForm.

Одна вещь, которая отличается, состоит в том, что2-ая ​​часть берет модель, которая содержит список, то есть:

// View Model
public class SecondModel
{
    public IList<SomeModel> MyList {get; set;}
}

// Partial View
@model SecondModel

@for(var i=0;i<Model.MyList.Count;i++)
{
    @Html.TextBoxFor(model => model.MyList[i].SomeField)
}

Вторая модель хорошо отображается на виде, но когда я иду на отправку, у контроллера при отладке появляется пустая модель.

Я попытался заставить переменную i также присвоить локальную переменную currentIndex = i;или что-то подобное, если лямбды не получали правильно i.

Просмотр в Интернете ничего не дал, так что я немного сбит с толку относительно того, почему один работает, а другой нет ...

1 Ответ

0 голосов
/ 06 июня 2011

По неизвестной причине обнаружил, что автобиндер не работает ... но UpdateModel (myModel); в контроллере работает ... так что с помощью этого.

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