【发布时间】:2012-01-17 15:00:09
【问题描述】:
我有一个名为 Genre 的数据库表,其中包含以下字段:
- Id(种子主键)
- 名称(类型名称 - 浪漫、西部等...)
我有一个名为 GenreDropDownModel 的模型类,其中包含以下代码:
public class GenreDropDownModel
{
private StoryDBEntities storyDB = new StoryDBEntities();
public Dictionary<int,string> genres { get; set; }
public GenreDropDownModel()
{
genres = new Dictionary<int,string>();
foreach (var genre in storyDB.Genres)
{
genres.Add(genre.Id, genre.Name);
}
}
}
我的控制器Write 操作声明为:
public ActionResult Write()
{
return View(new GenreDropDownModel());
}
最后,我的视图 Write.cshtml 是我得到以下错误的地方:
DataBinding: 'System.Collections.Generic.KeyValuePair`2[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=4.0.0.0 , Culture=neutral, PublicKeyToken=b77a5c561934e089]]' 不包含名为“Id”的属性。
@model Stories.Models.GenreDropDownModel
@{
ViewBag.Title = "Write";
}
<h2>Write</h2>
@Html.DropDownListFor(model => model.genres,new SelectList(Model.genres,"Id","Name"))
【问题讨论】:
标签: asp.net-mvc-3 entity-framework-4 html.dropdownlistfor