我收到错误“对象引用不设置到对象的实例”在这条线的一个实例:错误的MVC视图:对象引用未设置到对象
@Html.DropDownListFor(m => m.Query.Area, Model.Area, "Select Area", new { @class = " QueryFormTextBox" })
有什么建议?
我收到错误“对象引用不设置到对象的实例”在这条线的一个实例:错误的MVC视图:对象引用未设置到对象
@Html.DropDownListFor(m => m.Query.Area, Model.Area, "Select Area", new { @class = " QueryFormTextBox" })
有什么建议?
您的m.Query
为空,所以m.Query.Area
抛出空引用异常。控制器中的初始化查询(到新的查询())和所有将工作。
如果我使用textarea而不是dropdownlist,那么m.Query传递我想要的值。 – CodeXerox
尝试在语句之前使用javascript警告参数,以检查所有值是否按预期发送,否则为空。还有一种可能性是模型本身并没有设置在视图中。
像:
alert(Model.Area);
我觉得'alert'是一个javacript而不是ASP.NET MVC标签。那么它不会工作。 –
你应该确保Model.Area
被它传递给你的IEnumerable<SelectListItem>
查看和类型之前实例告诉我们在哪儿,你在模型中传递的代码。 –
m.Query为空? –
什么是堆栈跟踪?它实际上是停在这条线上还是在'DropDownListFor'内?如果它在这一行,'Model'是'null',只有当它在'DropDownListFor'内时才是'm.Query.Area'引起的问题。 (请记住'm => m.Query.Area'是一个表达式);你实际上并没有访问成员。 –