Ich versuche, eine Dropdown-Liste aus einer mit Linq-2-SQL zugeordneten Datenbank mit ASP.NET MVC 2 zu füllen und erhalte weiterhin diesen Fehler.
Ich bin so verwirrt, weil ich IEnumerable<SelectListItem>in der zweiten Zeile eine Variable vom Typ deklariere , aber der Fehler lässt mich denken, dass dies nicht der Fall ist. Ich denke, das sollte sehr einfach sein, aber ich kämpfe. Jede Hilfe wird geschätzt.
Hier sind die interessanten Teile meines Controllers:
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();
}
Und hier sind die interessanten Teile meiner Ansicht:
<div class="editor-label">
<%: Html.LabelFor(model => model.basetype) %>
</div>
<div class="editor-field">
<%: Html.DropDownList("basetype") %>
<%: Html.ValidationMessageFor(model => model.basetype) %>
</div>
Hier ist die POST-Aktion beim Absenden des Formulars
// 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);
}
}
Vielen Dank.