首页 > 解决方案 > DropdownList 值在 ASP.NET MVC 中为空

问题描述

行动:

[HttpPost]
public ActionResult Index(Account account, FormCollection fc)
{   
    using (accountgoEntities entities = new accountgoEntities())
    {
        entities.Account.Add(account);
        entities.SaveChanges();
        int id = account.Id;
    }

    //return View(Account);
    return  RedirectToAction("Account_details");
}

看法:

<div class="form-group">
    <strong class="strong">company name  </strong>
    <div class="col-md-10">
        @Html.DropDownList("CompanyName", (IEnumerable<SelectListItem>)ViewBag.CompanyName, "chose", new { @class = "form-control" })

        @Html.ValidationMessageFor(model => model.Company.Name, "", new { @class = "text-danger" })
    </div>
</div>

标签: c#asp.net-mvc

解决方案


正如你在评论中所说:

提交表单 companyId = null 后

这实际上是因为您的下拉选择输入字段名称CompanyName而不是CompanyId

所以命名CompanyId如下:

<div class="form-group">
    <strong class="strong">Company Name</strong>
    <div class="col-md-10">
        @Html.DropDownList("CompanyId", (IEnumerable<SelectListItem>)ViewBag.CompanyName, "Select Company", new { @class = "form-control" })

        @Html.ValidationMessageFor(model => model.CompanyId, "", new { @class = "text-danger" })
    </div>
</div>

现在CompanyId将在帖子上具有价值。


推荐阅读