Во все возрастающей эпической ошибке, связанной с моими формами «Создать» и «Редактировать», у меня все еще возникают проблемы при создании флажков с помощью Html.Checkbox (). Я не уверен, стоит ли мне просто вручную писать HTML на этом этапе.
У меня есть вид модели:
public class AdminGameReviewViewModel
{
public Game GameData { get; set; }
public List<Genre> AllGenres { get; set; }
public List<PlatformListing> AllPlatforms { get; set; }
}
И вспомогательная модель:
public class PlatformListing
{
public Platform Platform { get; set; }
public bool IsSelected { get; set; }
}
И я пытаюсь сгенерировать флажки так:
<%: Html.Label("Platforms") %><br />
<% Model.AllPlatforms.ForEach(p => Html.Encode(Html.CheckBox("PlatformIDs", p.IsSelected, new { value = p.Platform.PlatformID }))); %>
Но они вообще не отображаются.
Мне любопытно, почему мне нужно предоставить логическое значение для самих флажков. Я бы подумал, что он просто отправит обратно проверенные значения в виде массива или списка, похожего на PHP $ _POST. Итак, я не уверен, правильно ли я реализую свое логическое свойство, в дополнение к любым другим ошибкам, которые я совершаю. Логическое значение вынуждает меня скрывать данные, которые я хочу отображать / связывать дальше, чем хотелось бы, и это дает мне проблемы с «видением» того, что я делаю неправильно.
У меня возникает ощущение, что я слишком глубоко смотрю на свою проблему и пытаюсь сделать решение более сложным, чем оно должно быть. Учитывая мою неопытность с MVC2 / C #, я просто не уверен, куда идти дальше. Не помогает то, что это, кажется, единственная часть обработки форм, которая либо закрывается, либо полностью игнорируется большинством демонстраций и учебников.
Итак, снова, любая помощь будет принята с благодарностью.