Выберите имя на основе идентификатора с помощью ASP. NET MVC - PullRequest
0 голосов
/ 26 марта 2020

Я создаю новую форму и хочу просмотреть имя на основе идентификатора в другой таблице, но идентификатор не отображается в раскрывающемся списке:

enter image description here

Это вид:

<div class="form-group">
        <label class="control-label col-md-2">ID Operator</label>
        <div class="col-md-10">
            @Html.DropDownList("idOp", null, htmlAttributes: new { @class = "form-control" })
            @Html.ValidationMessageFor(model => model.idOp, "", new { @class = "text-danger" })
        </div>
    </div>

    <div class="form-group">
        <label class="control-label col-md-2">Name</label>
        <div class="control-label col-md-10">
            @Html.EditorFor(model => model.tbl_operator.nama, new { htmlAttributes = new { @class = "form-control" } })
            @Html.ValidationMessageFor(model => model.tbl_operator.nama , "", new { @class = "text-danger" })
        </div>
</div> 

Это контроллер:

public ActionResult Create()
{
        ViewBag.idEx = new SelectList(db.tbl_exercises, "idEx");
        ViewBag.idOp = new SelectList(db.tbl_operator, "idOp");
        return View();
} 

Возможно, мне не хватает кода ..

Пожалуйста, помогите мне - большое спасибо

Ответы [ 2 ]

1 голос
/ 26 марта 2020

Вам нужно выбрать, какое поле будет Name, Value для SelectList как

ViewBag.idEx = new SelectList(tbl_exercises, "Value", "Name");

Я сделал пример базы на основе вашего кода

var tbl_exercises = new List<exercises>
{
                new exercises
                {
                    Name = "Name 1",
                    Value = 10
                },
                new exercises
                {
                    Name = "Name 2",
                    Value = 11
                }
  };

  ViewBag.idEx = new SelectList(tbl_exercises, "Value", "Name");
0 голосов
/ 26 марта 2020

SelectList определяется как

public SelectList(IEnumerable items, string dataValueField, string dataTextField);

В вашем контроллере попробуйте использовать

ViewBag.idOp = new SelectList(db.tbl_operator, "idOp","idOp");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...