Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.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/2/.net/23.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# DbEntityValidationException保存对数据库的更改时出错_C#_.net_Model View Controller - Fatal编程技术网

C# DbEntityValidationException保存对数据库的更改时出错

C# DbEntityValidationException保存对数据库的更改时出错,c#,.net,model-view-controller,C#,.net,Model View Controller,我正在使用SQLServer从控制器中获取一些数据,并通过下面提到的方法对其进行一些更改 除了遇到总是抛出System.Data.Entity.Validation.DbEntityValidationException的db.savechanges()时,一切正常。我试着寻找一些解决方案,但到目前为止,我的项目还没有成功。有什么不同的方法我应该尝试吗?我做错了什么 public ActionResult Details(int a) { var deta

我正在使用SQLServer从控制器中获取一些数据,并通过下面提到的方法对其进行一些更改

除了遇到总是抛出System.Data.Entity.Validation.DbEntityValidationException的
db.savechanges()
时,一切正常。我试着寻找一些解决方案,但到目前为止,我的项目还没有成功。有什么不同的方法我应该尝试吗?我做错了什么

public ActionResult Details(int a)
        {
            var details = db.tableXes.ToList();
            List<Class1> result = new List<Class1>();
            tableX tb = new tableX();
            foreach (var item in details)
            {
                result.Add(new Class1 { id = item.id, Name = item.Name, X1 = item.X1, X2 = item.X2, Sum = item.X1 + item.X2 + a, Average = (item.X1 + item.X2 + a) / 3 });
                tb.X1 = item.X1;
                tb.X2 = item.X2;
                tb.Sum = item.X1 + item.X2 + a;
                tb.Average = (item.X1 + item.X2 + a) / 3;
                db.tableXes.Add(tb);
                db.SaveChanges();
            }
            return View(db.tableXes.ToList());
        }
公共行动结果详细信息(int a)
{
var details=db.tableXes.ToList();
列表结果=新列表();
tableX tb=新tableX();
foreach(详细的var项目)
{
结果.Add(新的Class1{id=item.id,Name=item.Name,X1=item.X1,X2=item.X2,Sum=item.X1+item.X2+a,Average=(item.X1+item.X2+a)/3});
tb.X1=第4.X1项;
tb.X2=第1.X2项;
tb.Sum=item.X1+item.X2+a;
tb.平均值=(第X1项+第X2项+第a项)/3;
db.表格.添加(tb);
db.SaveChanges();
}
返回视图(db.tableXes.ToList());
}

异常消息是什么?EntityFramework.dll中出现“System.Data.Entity.Validation.DbEntityValidationException”类型的异常,但未在用户代码中处理。其他信息:一个或多个实体的验证失败。有关更多详细信息,请参阅“EntityValidationErrors”属性。让我们看看EntityValidationErrors属性以获取更多详细信息。它显示count=1长故事缩短您的对象有问题,它没有通过验证测试,实体框架不知道如何处理它。这个应该有帮助