Моя модель my имеет логическое свойство UserMigrated, после того как пользователь установил перенос, он не может вернуться назад, поэтому представление становится следующим:

сь, простой вопрос для вас asp.net MVC гуру:

У меня есть флажок, созданный так:

<%=Html.CheckBox("MyCheckBox", true, new { disabled = "disabled"})%>

В своем действии я проверяю значение следующим образом:

bool isChecked = form["MyCheckBox"].Contains("true");

Я ожидаю, что это вернет истину, поскольку это проверено. Однако созданный скрытый элемент имеет ложное значение:

<input checked="checked" disabled="disabled" id="MyCheckBox" name="MyCheckBox" type="checkbox" value="true" />
<input name="MyCheckBox" type="hidden" value="false" />

Во-первых, есть ли способ заставить HtmlHelper вести себя так, как я ожидал? Или единственный способ вручную создать вход / создать свой собственный вспомогательный метод? (не то, что это большое дело ...)

Во-вторых, кто-нибудь может пролить свет на то, почему флажки ведут себя так? Я ошибаюсь, предполагая, что установленный флажок отключен должен == true? Отключенное состояние семантически означает ложь?

Ответы на вопрос(4)

Ваш ответ на вопрос