在更新db中的对象时,使用属性id更新链接表

时间:2017-11-21 15:39:29

标签: entity-framework

我有一个对象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>中提供的值再次插入它们 或类似的,但不希望它再次尝试插入相同的值。

如何实现它?

0 个答案:

没有答案