我试图使用ASP.NET MVC2从一个用Linq- 2 -SQL映射的数据库中填充一个下拉列表,但一直收到这个错误。
我很困惑,因为我在第二行声明了一个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);
}
}
谢谢。
https://stackoverflow.com/questions/3393521
复制相似问题