MVC2模型ReadOnly公共属性访问导致“对象未设置为引用...”

时间:2013-12-04 21:23:18

标签: asp.net-mvc model readonly

我在该视图模型中有一个ViewModel和一个ReadOnly属性,我在视图中似乎无法访问。

Public ReadOnly Property ListOfSubjects() As List(Of ListOfSubjects)
    Get
        Return FeedbackSubjectsContract.GetList()
    End Get
End Property

问题在于,在我的视图中,当我尝试遍历“ListOfSubjects”时,我得到“对象引用未设置为对象的实例”

控制器看起来像这样

Function Index() As ActionResult
   Return View()
End Function

View看起来像这样:

<%
   For Each myItem In Model.ListOfSubjects
     Response.Write(myItem.SubjectName))
   Next
%>

此外,视图是强类型的,并继承了正确的模型。实际上,我可以在控制器中设置该属性,并将一个新初始化的模型返回到我的视图,这可以正常工作,但我似乎无法在我的模型中设置该列表的值(这是我想要做的事情)它)

我做错了什么?

2 个答案:

答案 0 :(得分:0)

我是C#家伙,但假设VB View()函数相同,则表示您没有将视图模型传递给视图:

Return View(/*should be passing a view model here*/)

请注意,在本文中,他们传递的是数据Return View(db.Movies.ToList())

http://www.asp.net/mvc/tutorials/getting-started-with-aspnet-mvc3/vb/accessing-your-model%27s-data-from-a-controller

文章底部有一个Previous链接,可以将您带回到他们创建模型的页面。

答案 1 :(得分:0)

谢谢AaronLS。我确实假设“模型”更像是传递给控制器​​的类的实例。我能够通过创建“新”模型,设置属性,然后将其传递给return语句来解决问题。

全部谢谢!