我有两个班,一个是Post,另一个是Category,有多对多的关系。
当我创建一个新的Post业务对象和一个类别对象时。
post.Categories.Add(category)
然后使用AutoMapper将帖子从业务模型对象映射到数据实体, 当我做的时候
dbContext.Posts.Add(post);
dbContext.SaveChanges();
它总是向Categories表添加一个新行,甚至类别实例也有ID值,这是数据库中的键。任何人都知道如何改变这个?如果数据库中存在类别信息,则不执行任何操作,除了向CategpryPosts表添加新行
答案 0 :(得分:0)
您需要将类别附加到上下文:
dbContext.Categories.Attach(category);
告诉EF它是一个未经修改的现有实体。