首页 > 解决方案 > .Net Core EF 核心,当我尝试添加实体时,是否存在另一个具有相同 ID 键的实例?

问题描述

我正在将来自 Api 的数据添加到数据库中,我正在使用的表上有外键,所以我使用下面的来清空表。

DbContext.Database.ExecuteSqlCommand("Delete from [ReportDatabase].[dbo].[To]");

但是,每隔一次我运行该作业时,它都会失败并出现以下错误:

System.InvalidOperationException:'无法跟踪实体类型'Ticket'的实例,因为已经在跟踪具有相同键值的另一个实例 {'id'}。

我的添加功能是:

public void Add(TEntity entity) => this.dbSet.Add(entity);

添加完所有条目后,我调用完成。

有谁知道是否有一种同步上下文的方法我觉得这是因为 SQL 语句导致我dbcontext不同步?

标签: .net-coreentity-framework-core

解决方案


推荐阅读