【发布时间】:2014-04-08 03:46:09
【问题描述】:
我最近让下拉列表正常工作,一切都很好,但由于某种原因,它现在抛出 value cannot be null 异常。我已经交换了变量名,并试图解决错误但没有任何效果。您能否看一下我的代码并指出正确的方向。我是 MVC4 的初学者,现在已经研究了几个小时,所以任何帮助都将不胜感激。我只是提前发布了相关代码。
编辑:它在视图中@Html.DropDownListFor(....) 行的开头抛出错误
型号:
public partial class SiteBookingsTable
{
public string departureAirport { get; set; }
public string arrivalAirport { get; set; }
[Required]
[Display(Name = "Flying From")]
public string chooseDepartureAirport { get; set; }
[Required]
[Display(Name = "Flying To")]
public string chooseArrivalAirport { get; set; }
}
查看:
@model Project56.Models.SiteBookingsTable
@{
List<Project56.Models.SiteBookingsTable> selectDepFlight = ViewBag.depList;
}
<tr>
<td>@Html.LabelFor(model => model.chooseDepartureAirport)<br />
@Html.DropDownListFor(model => model.chooseDepartureAirport, new SelectList(selectDepFlight,"departureAirport","departureAirport"))</td>
</tr>
控制器:
public ActionResult Create()
{
List<SiteBookingsTable> selectDepFlight = new List<SiteBookingsTable>();
selectDepFlight.Add(new SiteBookingsTable() { listID = 0, departureAirport = "-Select-" });
selectDepFlight.Add(new SiteBookingsTable() { listID = 1, departureAirport = "London (LTN)" });
selectDepFlight.Add(new SiteBookingsTable() { listID = 2, departureAirport = "Manchester (MAN)" });
ViewBag.depList = selectDepFlight;
return View();
}
[HttpPost]
public ActionResult Create(SiteBookingsTable aBooking)
{
if (ModelState.IsValid == true)
{
newBooking.SiteBookingsTables.Add(aBooking);
newBooking.SaveChanges();
return RedirectToAction("Index");
}
return View(aBooking);
}
【问题讨论】:
标签: c# asp.net-mvc-4