Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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# 使用foreach和实体框架删除许多项_C#_Entity Framework - Fatal编程技术网

C# 使用foreach和实体框架删除许多项

C# 使用foreach和实体框架删除许多项,c#,entity-framework,C#,Entity Framework,详情请参阅: 数据库记录 JN_国家记录: JN_玩家记录: 这是我的代码: List<int> ids=new List<int> {12, 14}; foreach (var item in ids) { try { _service.Delete(item); }

详情请参阅:

数据库记录

JN_国家记录:

JN_玩家记录:

这是我的代码:

List<int> ids=new List<int> {12, 14};
            foreach (var item in ids)
            {
                try
                {
                    _service.Delete(item);
                }
                catch (Exception e)
                {

                }
            }
List id=新列表{12,14};
foreach(ID中的变量项)
{
尝试
{
_服务。删除(项目);
}
捕获(例外e)
{
}
}
第一次=>项目是12

错误:

InnerException{“DELETE语句与引用冲突 约束\“FK_dbo.JN_玩家\ u dbo.JN_国家\ u JN_国家\ ID\” 数据库“JuventusApk\”表中发生冲突 \“dbo.JN\u Players\”,列“JN\u Country\u ID”。\r\n该语句已被删除 终止。“}System.Exception{System.Data.SqlClient.SqlException}

这是真的,因为他为这个国家注册了一名球员

第二次=>项目为14

错误:

InnerException{“DELETE语句与引用冲突 约束\“FK_dbo.JN_玩家\ u dbo.JN_国家\ u JN_国家\ ID\” 数据库“JuventusApk\”表中发生冲突 \“dbo.JN\u Players\”,列“JN\u Country\u ID”。\r\n该语句已被删除 终止。“}System.Exception{System.Data.SqlClient.SqlException}


这不是真的。这个国家没有注册球员。发生此错误的原因

您的_service.Delete()方法是否重用了相同的上下文?数据库似乎认为这是真的。您确定约束是按您认为的方式定义的吗?你确定数据处于你认为的状态吗?您什么时候将更改从数据上下文提交到数据库?旁注:空
catch
块是一个众所周知的坏主意。我会查看外键,以确保它确实在做我们“假设”它正在做的事情。你也能把它寄出去吗?