У меня есть столбец в базе данных, который я хочу, чтобы пользователь мог установить с помощью поля ввода.Прямо сейчас он отображается в виде списка выбора с параметрами true или false.Вместо этого я хотел бы, чтобы он отображал два пользовательских параметра, называемых чем-то другим.
Включая директивы using и т. Д. На случай, если что-то упущено.
В представлении:
@model (ProjectName).Models.(ModelName)
<div class="form-group">
@Html.LabelFor(model => model.Chipped, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
<div class="checkbox">
@Html.EditorFor(model => model.Chipped)
@Html.ValidationMessageFor(model => model.Chipped, "", new { @class = "text-danger" })
</div>
</div>
</div>
В модели:
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Web.Mvc;
public bool? Chipped { get; set; }
Какой хороший способ сделать это?
Я попробовал предложение, которое я получил в комментариях.
Модель тогда выглядит так:
public IEnumerable<SelectListItem> ChippedOptions1 { get => ChippedOptions; set => ChippedOptions = value; }
И вид таков:
<div class="form-group">
@Html.LabelFor(model => model.Chipped, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
<div class="checkbox">
@Html.DropDownListFor(m => m.Chipped, Model.ChippedOptions)
@Html.ValidationMessageFor(model => model.Chipped, "", new { @class = "text-danger" })
</div>
</div>
</div>
Сообщение об ошибке:
«Модель» не содержит определения для «Chipped», и доступный метод расширения «Chippped», принимающий первый аргумент типа «Модель», не может бытьнайдено (вам не хватает директивы using или ссылки на сборку?)