繁体   English   中英

从asp.net mvc中的数据库中选择多个实体

[英]select multiple entities from database in asp.net mvc

我尝试从数据库中获取性别实体(男性或女性),并希望在下拉框中显示它:

控制器:

List<Gender> list2 = db.Gender.ToList();
ViewBag.GenderList = new SelectList(list2, "GenderID", "GenderType");

视图:

@Html.DropDownListFor(model => model.GenderID, ViewBag.GenderList as SelectList,"--select--",new { @class="form-control"})

我的错在哪里? 我需要帮助

性别阶层

public class GenderViewModel
{
    public int GenderID { get; set; }
    public string GenderN { get; set; }
}

个人班

public class PersonalViewModel
{
    public int PersonalID { get; set; }
    public string PName { get; set; }
    public string PLastname { get; set; }
    public System.DateTime DOB { get; set; }
    public string Email { get; set; }
    public string Phone { get; set; }
    public string PPassword { get; set; }
    public int GenderID { get; set; }
    public int PAuthorisation { get; set; }
    public bool PStatus { get; set; }
    public int ShopId { get; set; }
    public System.DateTime JobStartDate { get; set; }

    public string GenderType { get; set; }
    public string ShopName { get; set; }
}

您的Gender类具有GenderN(我假设是GenderName?),但是绑定到GenderType,因此仅不匹配将导致异常。 ViewBag是动态的,因此您无需在视图中进行强制转换(因为它是在运行时评估的)...

更改GenderClass:

public class GenderViewModel
    {
        public int GenderID { get; set; }
        public string GenderName { get; set; }
    }

并更改控制器:

ist<Gender> list2 = db.Gender.ToList();
ViewBag.GenderList = new SelectList(list2, "GenderID", "GenderName");

发布特定错误会有所帮助。

不知道您看到的确切错误,但是我确定您可以像这样使用ViewBag,因为它是一个匿名对象。 将ViewBag分配给一个单独的变量:

@{
   var genderlist = (SelectList)ViewBag.GenderList;
}

@Html.DropDownList("genderID", genderlist, "Gender", new { @class = "classnameifneeded" })

就个人而言,我会这样做:

类/ C#/控制器端:

List<Gender> list2 = db.Gender.ToList();
ViewBag.GenderList = list2;

侧面:

@{
   var genderlist = ViewBag.GenderList;
}

Html.DropDownList("genderID", new SelectList(genderlist, "GenderID", "GenderType", 0), "Gender", new { @class="classnameifneeded" })

在html上尝试:@ Html.DropDownList(“ GenderList”,null,“ --select--”,htmlAttributes:new {@class =“ form-control”})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM