如何解决ASP.NET List <SelectListItem>将null传递给控制器
我有一个带有单选按钮的表格。选择其中一个后,在[POST]方法中,“公司”列表计数仍为0。您知道导致问题的原因吗?
控制器:
// GET: Commission/Create
public ActionResult Create()
{
CommissionMVCCreateModel commission = new CommissionMVCCreateModel();
List<CompanyMVCModel> companies = sqliteDataAccess.LoadCompanies();
commission.Companies = companies.Select(x => new SelectListItem { Text = x.CompanyName,Value = x.Id.ToString() }).ToList();
return View(commission);
}
// POST: Commission/Create
[ValidateAntiForgeryToken]
[HttpPost]
public ActionResult Create(CommissionMVCCreateModel commissionModel)
{
try
{
if(ModelState.IsValid)
{
}
// Todo: Add insert logic here
return View();
}
catch
{
return View();
}
}
型号:
public class CommissionMVCCreateModel
{
public List<SelectListItem> Companies { get; set; } = new List<SelectListItem>();
...
...
}
查看:
<form>
...
...
@Html.LabelFor(model => model.Companies,htmlAttributes: new { @class = "control-label" })
<div class="btn-group-vertical">
@foreach (var company in Model.Companies)
{
<label class="btn btn-primary col-md-offset-2 col-md-5 ">
<input type="radio" name="company" id="@company.Value" value="@company.Value"/>
@company.Text
</label>
}
</div>
...
...
</form>
在表格中,我也有部分内容用于创建新公司,并且其值已正确传递。我唯一的问题是与此SelectListItem。我也尝试使用SelectList,但是结果是一样的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。