0

背景资料

所以我在后端使用 Breezejs 和 Knockout 以及 EF5 和 Breeze MVC api 控制器。我的数据库中的一个表是一个关联表,有 3 列 - 一个 id 和两个外键(我们将它们称为 fkey1 和 fkey2 以及 table1 和 table2)。在我的应用程序中,我需要向这个关联表中添加一条记录。Breeze 知道这张表的关系。

情况

Breeze js 为我创建了一个新记录,然后我找出我需要与之关联的记录。我是否需要将 table1 实体的 id 添加到 fkey1 可观察对象中,将 table2 实体 id 添加到 fkey2 可观察对象中,并将整个实体添加到它们各自的关系属性中,并将这个新实体对象添加到 table1 和 table2 实体关联属性中? 还是将 id 添加到新对象中会自动将这些对象添加到关系属性中(也许这些对象订阅了 fkey1 和 fkey2 属性? - 这就是我猜在微风背景下发生的事情,在黑暗中拍摄虽然我不知道)。

使用 Breeze 创建新实体非常简单,我喜欢它,但在创建具有大量关系的新实体时我有点困惑。

如果您需要更好地描述我的情况,请告诉我,这很难解释。谢谢!

4

1 回答 1

1

如果您在创建和附加实体时适当地设置了“外键”属性,Breeze 将自动更新所有关联关系,即此实体和任何相关实体的导航属性。您永远不需要手动执行任何修复。

同样,如果您执行相反的操作并将实体分配给标量导航属性,则 Breeze 将自动更新外键。对于集合导航属性,如果您将值推送到集合中,那么 Breeze 将自动更新被推送实体的外键。

希望这会有所帮助,但也许我错过了这个问题......

于 2013-05-13T17:51:58.503 回答