我正在使用 Breeze 创建动态数据编辑网格。在我向管理器添加新实体、编辑属性、将其保存到 WebAPI 服务并进行本地查询后,我得到了两次相同的实体。一个实体在 entitystate 中服务器生成的键不变,另一个是 primarykey -1 并在 entitystate 中添加。
真的不知道我做错了什么或者不了解 Breeze 背后的机制。
笔记。
我正在使用覆盖了 savechanges 方法的自定义上下文提供程序。我在键映射中返回实体类型、实值(DB 生成的键)、临时值(由 Breeze 分配的键,例如 -1)。
编辑。
我解决了这个问题。我的自定义上下文提供程序中有一个错误。我忘记将生成的键盘映射实际添加到 savechangescore 方法的结果中。