Как остановить значения в объекте ViewBag, связанного с элементами управления в MVC? Вид не сильно типизирован.ViewBag, используемый в привязке к модели
Я передаю данные, представляющие вид, используя ViewBag. Этот datatable передается как значение в пользовательский элемент управления, построенный с использованием методов расширения на HtmlHelper
.
Вид имеет некоторую логику, которая полагается на EntityID, поэтому я передаю EntityID в представление с помощью ViewBag.
Управление строит, помимо прочего, скрытое поле с именем «EntityID» и вместо того, чтобы использовать значение, которое я передаю из своего набора данных в html-помощник, вместо этого привязывается к значению в ViewBag.
return htmlHelper.Hidden(name, value, attributes);
Как я получаю HtmlHelper
использовать мое значение вместо того, чтобы использовать то, что находится в ViewBag?
Это происходит, когда визуализируется представление.
Вызов контроллера View осуществляется с помощью запроса Ajax GET, а возвращаемый html-вид добавляется к div
.
Запрос GET отправляет объект методу действия. Объект имеет свойство с именем EntityId
Это то, как 'HtmHelper'methods работать - они сначала проверьте значение в «ModelState», если не найдено, затем «ViewData» и, наконец, свойство модели. –
@StephenMuecke Я мог бы создать скрытую строку управления вводами, но я хотел знать, есть ли способ предотвратить использование HtmlHelper' ViewBag во время привязки модели. – Developer
Можете ли вы дать немного больше контекста - это происходит, когда представление сначала отображается, или только если вы либо возвращаете представление после отправки, либо если у метода есть параметр, который соответствует имени. –