Этот пост задает этот вопрос, но не дает ответа, поэтому я подумал, что задам вопрос по-другому.
У меня есть страница, которая отображает скрытое значение из модели:
<%=Html.Hidden("myName", model.myValue) %>
Поскольку я передаю значение в параметре value, можно подумать, что оно выведет это значение, но это не так.
Код для рендеринга полей ввода имеет следующий вид:
string attemptedValue = (string)htmlHelper.GetModelStateValue(name, typeof(string));
tagBuilder.MergeAttribute("value", attemptedValue ?? ((useViewData) ? htmlHelper.EvalString(name) : valueParameter), isExplicitValue);
В основном, если ModelState (который содержит опубликованные значения) содержит значение для переданного «имени», он будет использовать это значение вместо вашего переданного значения в вспомогательный метод. В моем случае я обновил модель, и мое обновленное значение не было выведено.
Если я передам значение методу, я ожидаю, что это значение будет отображено.
Я что-то упустил в этом дизайне или это просто неправильно?