MVC3 Обновить свойство модели при изменении значения в TextBox - PullRequest
0 голосов
/ 17 февраля 2012

Я работаю над веб-приложением MVC3 и сталкиваюсь с проблемой при передаче значений из моей модели обратно в Action с использованием AJAX.

Когда я

1), перейдите к этому представлению2) измените текстовое поле Количество 3) нажмите сохранить

Я получу то же значение для «Количество», что и при передаче модели в представление.Я ожидал бы, что Модель будет синхронной с Текстовыми полями, но в действительности это не так.Мне нужно либо синхронизировать модель, либо каким-либо другим способом получить новое значение «Количество» в ActionLink.

- РЕШЕНИЕ:

По сути, причина, по которой мой FormCollection не обновлялсяпотому что я использовал функцию Html.BeginForm и вызывал Ajax.ActionLink.Они не работают хорошо вместе.При переходе на Ajax.BeginForm я успешно смог вернуть обновленную коллекцию FormCollection.

(сейчас я не могу вставить здесь код, потому что он многократно подвергался рефакторингу и не распознается)

1 Ответ

1 голос
/ 17 февраля 2012

Для обновления модели вам необходимо оформить POST.Затем вам нужно будет украсить ваш метод Save атрибутом HttpPost и принять вашу модель в качестве первого аргумента.Фреймворк передаст вам аргумент.

Вот вспомогательная статья на этом форуме.

Действие ASP.NET MVC [HttpPost] принимает один объект, выдает ошибки проверкиViewPage

EDIT

Добавлена ​​измененная ссылка, более непосредственно связанная с Ajax ActionLink - MVC Ajax.ActionLink не находит POSTметод

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