如何初始化一个对象列表

本文关键字:列表 一个对象 初始化 | 更新日期: 2023-09-27 18:09:28

这是我的控制器获取一个列表的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;

我得到错误:

对象引用未设置为对象的实例

这是一个常见的错误,我不知道如何解决它…也许它更复杂,当你像这个例子,使用继承…

如何初始化一个对象列表

列表SingleBlogPostsContentPages为空,因此程序显示对象引用没有设置为对象的实例。为了避免这种情况,将类BlogListContentPage更改为:

public class BlogListContentPage : ContentPage
{
    public BlogListContentPage()
    {
        SingleBlogPostsContentPages = new List<ContentPage>();
    }
    public List<ContentPage> SingleBlogPostsContentPages { get; set; }
}