這是我的控制器動作有型的無ViewData的項目 '的IEnumerable <SelectListItem>' 具有關鍵 'M_TYPE'
[HttpGet]
public ActionResult AddDrug()
{
UserDB db = new UserDB();
ViewData["MedType"] = new SelectList(db.mtype, "MID", "M_TYPE");
return View();
}
這是POST方法
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult AddDrug(Drug drug)
{
UserDB db = new UserDB();
if (ModelState.IsValid)
{
db.drugs.Add(drug);
db.SaveChanges();
ModelState.Clear();
TempData["AlertMessage"] = "Medicine Type Added Sucessfully";
return View();
}
return View(drug);
}
這是我的查看
<div class="editor-label">
@Html.LabelFor(model => model.M_TYPE)
</div>
<div class="editor-field">
@Html.DropDownListFor(model => model.M_TYPE,ViewData["MedType"] as IEnumerable<SelectListItem>,"(none)")
@Html.ValidationMessageFor(model => model.M_TYPE)
</div>
現在我不想從下拉列表中插入數據到數據庫中,但它通過該錯誤
您需要在返回之前重新分配'SelectList'查看在POST方法(它的'null'導致那個異常) – 2015-01-21 10:08:21
可能的重複[沒有ViewData項的類型'IEnumerable'有關鍵「鍵」](http://stackoverflow.com/questions/27916642/there-is-no-viewdata-item-of-type-enumerableselectlistitem-that-has-the-key) –
2015-01-21 10:12:59