Неправильно заполнены поля формы ASP MVC - PullRequest
0 голосов
/ 19 января 2009

У меня есть форма ASP MVC, которая обновляет бизнес-объект, а затем его действие переходит на другую страницу.

Обе эти страницы имеют текстовую область с идентификатором «Описание», когда она переходит на другую страницу, по неизвестным причинам она заполняет значения, которые были введены до отправки формы.

Ответы [ 4 ]

2 голосов
/ 19 января 2009

Какой метод вы используете для обновления вашего объекта? Вы пытались добавить имя типа объекта в идентификатор?

Как, Product.Description вместо просто Description.

1 голос
/ 19 января 2009

Не зная, что именно вы делаете, я бы сказал, что в модели ViewData есть свойство «Описание». ASP.NET MVC попытается сопоставить значения вашей формы со значениями из ViewData, включая модель. Вы можете переименовать элемент управления или ссылаться на объект напрямую, как сказал Чад. например, Product.Description

С более подробной информацией, кто-то может помочь больше.

0 голосов
/ 10 сентября 2010

Не видя действий вашего контроллера, это немного догадка, но как это перейти на другую страницу?

Если в постконтроллере вы возвращаете другое представление (или возвращаете другое действие, которое возвращает представление и т. Д.), Возможно, что ModelState использует предпринятые значения из предыдущей отправки формы, это ожидаемое поведение (это то, как система валидации и привязка модели работает для начала). Если вы отправляете их в другую форму, используйте RedirectResult для вашего следующего действия и при необходимости используйте TempData для любого состояния, которое необходимо сохранить при переходе.

Если это вообще возможно, я бы также рекомендовал использовать строго типизированные помощники, такие как Html.TextAreaFor (x => x.Description)

0 голосов
/ 19 января 2009
<p><label>Description</label><br /><br /><%=Html.TextArea("Description", new { style = "width:470px;" })%></p>

Для пояснения я перехожу со страницы "Редактировать проект" на страницу "Добавить проблему"

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