首页 > 解决方案 > 没有“IEnumerable”类型的 ViewData 项' 具有键 'Dept_IDs'

问题描述

下拉菜单工作正常。它从数据库中获取值,但是当我将选定的值插入表中时。它给了我错误,尝试了很多不同的方法但没有奏效。

看法:

@Html.DropDownList(model => model.Dept_ID, ViewBag.deptlistname as 
SelectList, "Please select a department");

控制器:

public ActionResult UserRegistration()
{
     HREntities4 db = new HREntities4();
     var getdeptlist = db.departments.ToList();
     SelectList list = new SelectList(getdeptlist, "Dept_ID", 
     "Dept_ID");
     ViewBag.deptlistname = list;


     return View();
 }

邮政:

[HttpPost]
public ActionResult UserRegistration(UserRegistration model)
{
    if (ModelState.IsValid)
    {
    var details = new HREntities4(); 
    details.logins.Add(new login{
       FirstName = model.FirstName, 
       LastName = model.LastName,
       Username = model.Username,
       Email = model.Email,
       Password = model.Password,
       PhoneNumber =model.PhoneNumber,
       Address = model.Address,
       Hire_Date = model.Hire_Date,
       Salary = model.Salary,
       Dept_ID = model.Dept_ID
    });
    details.SaveChanges();
    ModelState.AddModelError("updated", "User has been registered");
        }
    return View();

    }

视图模型:

public partial class UserRegistration
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string Username { get; set; }
    public string Email { get; set; }
    public string Password { get; set; }
    public string PhoneNumber { get; set; }
    public string Address { get; set; }
    public string Hire_Date { get; set; }
    public Nullable<double> Salary { get; set; }
    public int Dept_ID { get; set; }

}

标签: model-view-controller

解决方案


删除's'fromDept_IDs因为在你的UserRegistration model你有Dept_ID.


推荐阅读