具有相关数据的ASP NET Core插入模型

时间:2018-11-16 07:36:22

标签: c# .net-core

我的模型如下:

class ModelA {
    public int ID { get; set; }
    public string PersonName { get; set;}
    ICollection<ModelB> TaskList { get; set; }
}

class ModelB {
    public int ID { get; set; }
    public string TaskDescription { get; set; }
    public int ModelAID { get; set; }
    public ModelA Person { get; set; }
}

在控制器中,我使用以下代码向ModelA添加新行,其中包含行ModelB:

IEnumerale<ModelB> BList = ....;
ModelA row = new ModelA() { PersonName = 'John' };
foreach (bRow in BList) {
    row.TaskList.add(bRow);
}

从上面的代码中,我收到了“ row.TaskList.add(bRow)”行的错误消息,该错误消息指出无法将行添加到空对象中。

我只想问一下,用相关数据创建新行是不正确的方法吗?如何完成任务而不会出现错误?我不想将过程分为两步,首先创建一行ModelA,然后通过其他方法插入ModelB列表。

谢谢!

威尔逊

1 个答案:

答案 0 :(得分:1)

为避免异常,请稍稍更改您的课程...

class ModelA {

    public ModelA()
    {
        TaskList = new Collection<ModelB>();
    }

    public int ID { get; set; }
    public string PersonName { get; set;}
    ICollection<ModelB> TaskList { get; set; }
}