在 C# 的实体框架中,如果我有一个与另一个类有关系的 POCO 类 - 例如 Product 和 ProductCategory,因此每个 Product 必须有一个存在于 Category 表中的类别列 ID,我可以构造 POCO 类关系很好,并调用repository.save。此时,如果它们不存在,它会在数据库中创建类别和产品行。
如果我尝试然后插入具有相同类别对象的新的第二个产品,那么它会尝试再次保存产品和类别,并抱怨更新了 0 行,因为我在类上有 [ConcurrencyCheck] 属性。
我希望它的行为如此,如果我保存第二个产品并且链接的类别对象已经存在并且没有更改,它不会更新它但仍然保存产品。
这可能吗?
例如
Category c = new Category();
Product p1 = new Product { Category = c };
repository.Insert(p1);
repository.Save();
Product p2 = new Product { Category = c };
repository.Insert(p2);
repository.Save();