使用从数据库生成的 RIA 服务和 EF5 EF 模型。
我有一个父对象,我们称它为 A 类。A 类有一个 B 类的集合。ClassB 有一个 ClassC 的实例。
因此,在我看来,用户输入一些数据,默认工作流程将为他们生成大量 ClassB。然而,他们希望能够选择他们将实际创建的那些。
因此,我创建了一个包装器,该包装器包含新的 ClassB 项目,并委托实际操作将 ClassB 添加到 Class A 的集合中。
因此,如果 A 类的默认设置是 2ClassB,但我取消选择第一个,然后执行所需的操作并保存我的更改,我注意到我的 A 类的 ClassB 集合正确地只包含一个 ClassB,但是当我在context 两个日记项目都被保存了。
我意识到,当我将 ClassC 添加到 ClassB 时,ClassB 会自动添加到 ClassB 的 Class Cs 集合中。
因此,当我在上下文中调用 savechanges 时,虽然我只将一个 ClassB 添加到 ClassA,但两者都被保存,因为它们已添加到 ClassC
由于 ClassC 仅映射到本质上是查找表的内容,因此我们无需对其进行编辑或保存更改,而且我们还没有为它实现任何 CRUD 功能。
虽然我们有 ClassA 的元数据类,包含 ClassB,ClassB 的元数据包含 ClassC,但没有 Class C 的元数据类。
有什么想法可以解决这个问题吗?