ฉันพยายามเติมรายการแบบหล่นลงจากฐานข้อมูลที่แมปกับ Linq-2-SQL โดยใช้ ASP.NET MVC 2 และรับข้อผิดพลาดนี้ต่อไป
ฉันสับสนมากเพราะฉันประกาศตัวแปรประเภทหนึ่งIEnumerable<SelectListItem>
ในบรรทัดที่สอง แต่ข้อผิดพลาดทำให้ฉันคิดว่านี่ไม่ใช่กรณี ฉันรู้สึกว่าสิ่งนี้ควรจะง่ายมาก แต่ฉันกำลังลำบาก ความช่วยเหลือใด ๆ ที่ชื่นชม
นี่คือบิตที่น่าสนใจของคอนโทรลเลอร์ของฉัน:
public ActionResult Create()
{
var db = new DB();
IEnumerable<SelectListItem> basetypes = db.Basetypes.Select(
b => new SelectListItem { Value = b.basetype, Text = b.basetype });
ViewData["basetype"] = basetypes;
return View();
}
และนี่คือบิตที่น่าสนใจในมุมมองของฉัน:
<div class="editor-label">
<%: Html.LabelFor(model => model.basetype) %>
</div>
<div class="editor-field">
<%: Html.DropDownList("basetype") %>
<%: Html.ValidationMessageFor(model => model.basetype) %>
</div>
นี่คือการกระทำ POST เมื่อส่งแบบฟอร์ม
// POST: /Meals/Create
[HttpPost]
public ActionResult Create(Meal meal)
{
if (ModelState.IsValid)
{
try
{
// TODO: Add insert logic here
var db = new DB();
db.Meals.InsertOnSubmit(meal);
db.SubmitChanges();
return RedirectToAction("Index");
}
catch
{
return View(meal);
}
}
else
{
return View(meal);
}
}
ขอบคุณ