Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 未设置ASP.NET MVC对象引用(为模型添加值)_C#_Asp.net Mvc_Asp.net Mvc 4_Model_Controller - Fatal编程技术网

C# 未设置ASP.NET MVC对象引用(为模型添加值)

C# 未设置ASP.NET MVC对象引用(为模型添加值),c#,asp.net-mvc,asp.net-mvc-4,model,controller,C#,Asp.net Mvc,Asp.net Mvc 4,Model,Controller,我的模型和控制器有愚蠢的问题。 我试图在一个视图上用局部视图显示两个模型 当我在控制器中填充模型时,我收到的消息对象引用未设置。。 但我不知道为什么 这是我的控制器和型号: 控制器: public ActionResult MultiView() { ChartItem c = new ChartItem(); c.Name = "Chart"; ChartItem c1 = new ChartItem(); c1.Name = "Chart1";

我的模型和控制器有愚蠢的问题。 我试图在一个视图上用局部视图显示两个模型

当我在控制器中填充模型时,我收到的消息对象引用未设置。。 但我不知道为什么

这是我的控制器和型号:

控制器:

public ActionResult MultiView()
{

    ChartItem c = new ChartItem();
    c.Name = "Chart";

    ChartItem c1 = new ChartItem();
    c1.Name = "Chart1";

    List<ChartItem> a = new List<ChartItem>();
    a.Add(c);
    a.Add(c1);

    ListItem l = new ListItem();
    l.Name = "List";
    ListItem l1 = new ListItem();
    l1.Name = "List1";

    List<ListItem> b = new List<ListItem>();
    b.Add(l);
    b.Add(l1);

    MultiModel m = new MultiModel();
    m.ChartItems.Add(c);
    m.ListItems.AddRange(b);

   List<MultiModel> model = new List<MultiModel>();
    model.Add(m);



    return View(model);
}
型号:

namespace MVCPArtial.Models
{
    public class ChartItem
    {
        public string Name { get; set; }
    }
}
namespace MVCPArtial.Models
{
    public class ListItem
    {
        public string Name { get; set; }
    }
}
namespace MVCPArtial.Models
{
    public class MultiModel
    {
        public List<ChartItem> ChartItems { get; set; }
        public List<ListItem> ListItems { get; set; }
    }

}
型号:

namespace MVCPArtial.Models
{
    public class ChartItem
    {
        public string Name { get; set; }
    }
}
namespace MVCPArtial.Models
{
    public class ListItem
    {
        public string Name { get; set; }
    }
}
namespace MVCPArtial.Models
{
    public class MultiModel
    {
        public List<ChartItem> ChartItems { get; set; }
        public List<ListItem> ListItems { get; set; }
    }

}
namespace MVCPArtial.Models
{
公共级多模式
{
公共列表图表项{get;set;}
公共列表列表项{get;set;}
}
}

错误:

您尚未在
多模式
中初始化集合。或者添加一个默认构造函数

public class MultiModel
{
    // add parameterless constructor
    public MultiModel()
    {
        ChartItems = new List<ChartItem>();
        ListItems  = new List<ListItem>)();
    }
    public List<ChartItem> ChartItems { get; set; }
    public List<ListItem> ListItems { get; set; }
}

太好了,斯蒂芬,非常感谢你!