设置列表选项为从控制器中选择

本文关键字:控制器 选择 列表 选项 设置 | 更新日期: 2023-09-27 18:18:55

我想知道是否有更好的方法将选项设置为选定的,最好是从控制器(我不希望在我的视图中有太多代码)。

我的想法是设置它有一个列表与我的3个选项;没有一个被选中。然后在该视图的GET操作上,根据角色将值(通过该选项/选择列表的id)设置为选中。我只是不确定如何从控制器访问列表和选项的id。

 <select class="form-control">
            @{
                switch (@Model.Role)
                {
                    case "User":
                        {
                            <option selected="selected">User</option>
                            <option>Investigator</option>
                            <option>Admin</option>
                            break;
                        }
                    case "Investigator":
                        {
                            <option>User</option>
                            <option selected="selected">Investigator</option>
                            <option>Admin</option>
                            break;
                        }
                    case "Admin":
                        {
                            <option>User</option>
                            <option>Investigator</option>
                            <option selected="selected">Admin</option>
                            break;
                        }
                    default:
                        break;
                }
            }
        </select>

设置列表选项为从控制器中选择

为什么不使用下拉列表的selectlistiitem呢?

控制器

  model.Roles.Insert(0,new SelectListItem { Text = "", Value = "", Selected=true });
<<p> 视图/strong>
  @Html.DropDownListFor(m => m.SelectedRole, Model.Roles)