我怀疑这很简单,我只是想念它.
我有一个视图模型,其中有一个字典作为其属性之一.此字典用于在我编辑记录时使用类别填充HTML选择.还有一个属性用于指示所选的CategoryID.但是,当我只是显示记录时,我想显示与CategoryID对应的键/值对的值.
我的观点模型:
public class ItemEditVM { public int ItemID { get; set; } public int? CategoryID { get; set; } public string ItemDesc { get; set; } public Dictionary<int,string> CategorySelect { get; set; } }
@Html.DisplayFor(model => model.CategorySelect.TryGetValue(model.CategoryID,out val))
我也试过这个失败,没有特定的错误信息:
@Html.DisplayFor(model => model.CategorySelect.SingleOrDefault(c=> int.Parse(c.Value) == model.CategoryID).Value)
我怎样才能做到这一点?
非常感谢
正确的答案(感谢Mystere Man)
@Html.DisplayFor(model=>model.CategorySelect[Model.CategoryID.Value])
解决方法
你有没有尝试过:
@Model.CategorySelect[Model.CategoryID.Value]
正如你所说,CategoryID不会为null,那么这应该不是问题..除非它可能为null,在这种情况下你需要做一些验证.