Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.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# 值不能为null-POST JSON_C#_Asp.net_Entity Framework_Post - Fatal编程技术网

C# 值不能为null-POST JSON

C# 值不能为null-POST JSON,c#,asp.net,entity-framework,post,C#,Asp.net,Entity Framework,Post,我得到一个错误: SystemArguementNullException:'值不能为null。参数名称: 实体的 当我离开AR_可靠性部分时,插入其他主要数据列时不会出错 public bool AddReport(Forms_Reports report) { ctx.Forms_Reports.Add(report); ctx.SaveChanges(); return true; } 我的JSON正文如下所示: [ { “应收账款可靠性”:[ { “过程

我得到一个错误:

SystemArguementNullException:'值不能为null。参数名称: 实体的

当我离开AR_可靠性部分时,插入其他主要数据列时不会出错

public bool AddReport(Forms_Reports report)
{
    ctx.Forms_Reports.Add(report);
    ctx.SaveChanges();

    return true;
}
我的JSON正文如下所示:

[
{ 
“应收账款可靠性”:[
{ 
“过程和结果分析”:“测试Pc HSS”,
“可靠性参数偏差”:“测试”,
“设备退出服务”:“测试Eos”,
“设备返回服务”:“测试者”,
“关键仪器故障”:“测试Ci”,
“总设备故障”:“测试”,
“总单点故障”:“测试Spf”,
“维护计划”或“进行中”:“测试”,
“活动许可证”:“测试Ap”,
“问题”:“测试”,
“库存储罐液位”:“测试”,
“流ID”:空,
“SPF_ID”:空,
“Ins_ID”:空,
“设备ID”:空,
“deu ID”:1
}
],
“封路”:“测试”,
“FirstMaintainStart”:“测试Fms”,
“PSR_操作”:“测试_Ao”,
“原料变更”:“测试Fsc”,
“产品线变更”:“测试”,
“安全会议”:“测试”,
“CR_操作”:“Test_Ao”,
“高优先级警报”:“测试Hpa”,
“消防系统损坏”:“测试Ifp”,
“报警禁止”:“测试”,
“FR_操作”:“Test_Ao”,
“维护”:“测试”,
“CreatedDate”:“2019-01-08T00:00:00”,
“更新日期”:“2019-01-08T00:00:00”,
“CreatedBy”:“开发HSS”,
“更新人”:“开发HSS”,
“移位”:“1”,
“区域ID”:1,
“用户ID”:1
}

]
难道你的JSON不是对象类型的列表吗?你是如何在对象中获取数据的

public bool AddReport(列表报告)
{

}
您的json看起来像一个元素的集合。试试这个:

public bool AddReport(IEnumerable<Forms_Reports> reports)
{
   ctx.Forms_Reports.AddRange(reports);
   ctx.SaveChanges();

   return true;
}
public bool AddReport(IEnumerable报告)
{
ctx.Forms_Reports.AddRange(报告);
ctx.SaveChanges();
返回true;
}

此外,最好将本例中的方法重命名为AddReports

这是否回答了您的问题?它始终是一个报告添加。只是一个报表包含的关联数据也要放在另一个表中。这有助于澄清吗?