Всякий раз, когда я создаю логическое свойство в моей модели ASP.NET MVC и пытаюсь создать флажок, используя @ Html.CheckBox, я получаю скрытое поле формы, сгенерированное автоматически. Я знаю, что это происходит по уважительной причине, но всякий раз, когда я отправляю свою форму и получаю это значение, используя коллекцию форм, она возвращает 2 значения, когда она находится в проверенном состоянии. Это представляет значение как это - «правда, ложь». Теперь, когда я получаю значения, используя коллекцию форм, и выполняю bool.Parse (), он выдает ошибку, потому что не может проанализировать 'true, false' вместе. Есть ли способ, чтобы избавиться от скрытого поля формы или я должен попробовать что-то во время обработки запроса?
В модели
[Display(Name ="Is Enabled")]
public bool IsEnabled { get; set; }
В контроллере
public ActionResult Request(FormCollection collection)
{
bool valueIsEnabled=bool.Parse(collection["IsEnabled"])
}
На виду
@Html.CheckBoxFor(m => m.IsEnabled, new {
@class = "custom-input"
})
Когда я нажимаю Проверено
Ожидаемый результат - верно
Фактический результат - правда, ложь
Когда я не нажимаю кнопку флажок
Ожидаемый результат - ложь
Фактический результат - ложь