无法获取下拉列表(用于编辑模型)

Cannot get list for dropdownfor (to edit model)

我正在创建一个表单以 post 编辑回控制器并在控制器中有一些下拉菜单。我尝试了两种在视图中不起作用的不同方法。这是我首先尝试的:

@Html.DropDownList("TechnicianId", null, htmlAttributes: new { @class = "form-control" })

现在我正在尝试这个:

@Html.DropDownListFor(m => m.TechnicianId, ViewBag.TechnicianId)

还有这个:

@Html.DropDownListFor(m => m.TechnicianId, TechnicianId)

从我在网上看到的第二个或第三个最接近。但是,它没有作为列表出现。这是我在控制器中的代码:

ViewBag.TechnicianId = new SelectList(db.Users.Where(u => u.Status == 1 || u.RoleID == new Guid("00000000-0000-0000-0000-000000000000")), "UserId", "FullName");

DropDownListFor 中的表达式应标识包含要显示的属性的对象。

尝试在 TechnicianId 列表中添加用户:

ViewBag.TechnicianId = db.Users
       .Where(u => u.Status == 1 || 
                   u.RoleID == new Guid("00000000-0000-0000-0000-000000000000"));

然后在视图中:

<%=Html.DropDownListFor(x => x.TechnicianId, 
                             new SelectList(
                                 ViewBag.TechnicianId, 
                                 "Value", 
                                 "Key")) %>