我正在使用ASP.Net MVC4(Razor)。我有以下代码:MVC模型不绑定到字典
Dictionary<string, OccasionObject> occasionList = new Dictionary<string, OccasionObject>()
的关键是时机的类的字符串。该occassion对象有3个属性:isAttending(bool)
,ID(int)
和Name(string)
在我CSHTML文件,我做了以下内容:
@foreach(string s in model.occasionList .Keys)
{
foreach(var o in model.occasionList .Keys[s])
{
@Html.CheckBoxFor(m=>m.occasionList[s].FirstOrDefault(ev=>ev.ID == o.ID).isAttending);
}
}
此完美结合的负荷,检查的箱子,我在SQL人工检查。但是,当我将此模型POST回服务器时,occasionList字典为空。模型绑定很好,因为模型中的其他属性仍然返回。
任何想法?
感谢, 大教堂
看来你在OccasionObject上使用FirstOrDefault,是不是字典'Dictionary>'而不是'Dictionary '? –
Rui