我是MVC的新手,我無法理解一段代碼。 我創建了一個新的控制器,並使用了它的所有CRUD方法和視圖 - 由visual studio自動生成 - 並且我無法理解代碼的一部分。Razor MVC 3,ViewBag中的Dropdownlist - 幫助理解這段代碼
看,在控制器從數據庫中設置的SelectList並把它放在一個ViewBag這樣的: 控制器
public ActionResult Create()
{
ViewBag.TypeID = new SelectList(db.PlacementTypes, "TypeID", "Description");
return View();
}
並在視圖是這樣的:
<div class="editor-label">
@Html.LabelFor(model => model.TypeID, "PlacementType")
</div>
<div class="editor-field">
@Html.DropDownList("TypeID", String.Empty)
@Html.ValidationMessageFor(model => model.TypeID)
</div>
什麼我不明白的是。哪裏來的SelectList來自?由於我沒有看到對ViewBag的調用。
我希望是這樣的:
@Html.DropDownListFor("TypeID", (SelectList)ViewBag.TypeID)
這是我的疑問。 MVC如何知道在哪裏找到正確的列表而不指定ViewBag?
謝謝。你用@ heads5150的答案來幫助我理解一點。 –