В моей ViewModel есть список, который я анализирую для View
List<BoolSetting>
BoolSetting:
public class BoolSetting
{
public BoolSetting(string displayName, bool value)
{
DisplayName = displayName;
Value = value;
}
public string DisplayName { get; set; }
public bool Value { get; set; }
}
Затем я хочу напечатать флажок для всех элементов в моем списке,поэтому список находится в ViewModel, представление использует
@foreach(var boolSettingList in Model.BoolSettingList)
{
<div>
@Html.CheckBox(boolSettingList.DisplayName, boolSettingList.Value)
@boolSettingList.DisplayName
</div>
}
Проблема в том, что когда я публикую это, моя модель не сохранит обновленные настройки (значения bool) в списке в моей ViewModel и, следовательно, объектпусто.
Я мог бы сделать
foreach (var VARIABLE in userSettingConfigViewModel.BoolSettingList)
{
VARIABLE.Value = (bool)Request.Form[VARIABLE.DisplayName];
}
Но у этой модели представления будет много списков, и некоторые из них будут иметь одинаковые имена!Так что это вызовет конфликты
Так есть ли способ, чтобы foreach распечатать все мои bool, а затем заставить MVC разобраться с тем, чтобы потом вернуть данные в объект List?Я не могу заставить CheckBoxFor работать так, как ему нужно выражение, и я не могу найти способ, как можно перемещаться по списку таким образом
Можно ли исправить это с помощью шаблонов, создав шаблон для BoolSetting и, возможно, List?