c# - 删除新实体抛出 InvalidOperationException
问题描述
我有两个实体客户和电话号码,我的客户实体有电话号码的集合,当我添加新客户并添加一些电话号码时,然后按单击删除客户按钮,EF 抛出'添加与处于已删除状态的实体的关系不被允许'。这个问题已经问过了,但我找不到任何解决方案来解决这个问题。我使用以下代码在 CustomerRepository 中删除客户:
public override void Remove(Customer model)
{
Context.Customers.Remove(model);
}
解决方案
不要在同一个DbContext
. 首先处置此对象并创建新对象dbContext
并尝试对新对象进行操作。否则,您的 changetracker 将与您的操作意图模棱两可,您将收到此错误。这是另一种解决方案:Removing Objects With a Relationship from DbContext
推荐阅读
- reactjs - 如何在 MaterialUi React 的 Autocomplete 中将状态转化为值
- reactjs - 如何在 React-Dropzone-Uploader 的 getUploadParams 方法中添加基本身份验证详细信息?
- python - python将unicode代码值转换为字符串,不带'\u'
- c# - 如何获取 onget 中的 ID 和 asp.net core razor 页面中的使用处理程序?
- sql-server - SQL Server 脚本到 Teradata Bteq 的转换
- java - Java 我可以将一个类导入另一个类吗?
- vim - 将这两列转置成行?
- python - 如何让 Python random.randrange 更高效地生成大范围随机数
- mongodb - 从数组到 Kafka 主题的值
- c# - 通过 DI 注入到 ServiceBusTrigger Azure 函数中的 IHttpClientFactory 是否为每个触发器重用或重新创建?