我没有掌握 MVC 模型的一些概念基础知识,我希望得到一些有用的澄清。
在我的 MVC 4 Web 应用程序中,我有一个为 DropDownList 构建 IEnumerable<SelectListItem> 的视图模型,如果我在视图中执行此操作:
@model MyApp.Models.MyModel
@Html.DropDownListFor(x => x.MyThingID, Model.MySelectList, "Select...")
我收到“对象引用未设置为对象的实例”错误。
但如果我这样做:
@model MyApp.Models.MyModel
@{ var myModel = new MyApp.Models.MyModel(); }
@Html.DropDownListFor(x => x.MyThingID, myModel.MySelectList, "Select...")
有用。但是这种显式实例化对我来说看起来和感觉都非常错误,我不确定我是否应该在控制器中做任何事情,此时这只是一个简单的“返回 View()”ActionResult。
我找不到太多好的指导,最终我正在尝试实现一些级联下拉菜单,所以我需要更好地了解它是如何工作的。如果您有时间和意愿提供帮助,我将不胜感激。