这是我的控制器获取blogpost列表并存储在listOfBlogposts中:
//BlogHome
public ActionResult BlogHome(string pageId, string viewName)
{
var page = RavenSession.Load<ContentPage>(pageId) as BlogListContentPage;
var listOfAllBlogPosts =
RavenSession.Query<ContentPage>().Where(o => o.Template.Action.Equals("SingleBlogPost")).ToList();
page.SingleBlogPostsContentPages = listOfAllBlogPosts;
return View(viewName, page);
}
包含列表的类:
public class BlogListContentPage : ContentPage
{
public List<ContentPage> SingleBlogPostsContentPages { get; set; }
}
当调试器到达此行时:
page.SingleBlogPostsContentPages = listOfAllBlogPosts;
我收到错误:
对象引用未设置为对象的实例
这对我来说是一个常见的错误,我不知道如何解决它。当你像这个例子一样使用继承时,它可能会更复杂。
答案 0 :(得分:-1)
列表SingleBlogPostsContentPages为null,因此程序显示Object引用未设置为对象的实例。为避免此更改,将类BlogListContentPage更改为:
public class BlogListContentPage : ContentPage
{
public BlogListContentPage()
{
SingleBlogPostsContentPages = new List<ContentPage>();
}
public List<ContentPage> SingleBlogPostsContentPages { get; set; }
}