我有一个对象MyProduct
,它有一个属性 - List
类型为List<Category>
。
当我将带有MyProduct
的{{1}}插入数据库时,产品将被插入到db中的相关表中,并且属性列表将插入到具有双主键的数据库中的链接表中例如。 dbContext.SaveChanges()
和ProductId
- 适用于CategoryId
。
当我尝试更新产品并将相同的类别分配给List<Category>
时,产品会更新,但上下文会尝试将相同的类别ID值重新插入到链接表中。
MyProduct
我需要做的是删除现有的对MyProduct product = _repo.GetProduct(productDto.ProductId);
product.Categories = categories;
_dbContext.SaveChanges();
+ ProductId
,然后根据CategoryId
List<Category>
中提供的值再次插入它们
或类似的,但不希望它再次尝试插入相同的值。
如何实现它?