0

在我的 datacontext.savechanges 之后,我立即停止代码并使用 Chrome 开发工具检查器查看刚刚运行的 XHR 请求。这就是我所看到的:

$type: "Breeze.WebApi.SaveResult, Breeze.WebApi"
   Entities: [{$id:2, $type:pdb.productMaster, PDB, Id:1912, ProductCode:a18, Description:a18t, GroupId:116}]
      0: {$id:2, $type:pdb.productMaster, PDB, Id:1912, ProductCode:a18, Description:a18t, GroupId:116}
      $id: "2"
      $type: "pdb.productMaster, PDB"
      ProductCode: "a18"
      ProductVersions: null
      Description: "a18t"
      GroupId: 116
      Id: 1912
      Errors: null

然后我直接进入 SQL Management Studio 并查看刚刚添加的记录:

Id    ProductCode    Description    GroupId
1912      a18           a18t          1

是的,我添加的每条记录都将 groupID 设置为 1!它是一个 int 字段。我可以在 SQL Management Studio 中手动将其设置为 116。

XHR 请求的响应也没有显示任何错误,并说 groupID 是 116。

我完全不知道这里发生了什么!微风错误?这太奇怪了。

4

1 回答 1

2

我将首先查看您的“productMaster”实体类型的元数据。您可以使用 Breeze 的 MetadataStore.getEntityType 方法,然后调查数据和导航属性。我的猜测是,这可能会让您更深入地了解这个问题......可能是您的客户端和服务器代码之间的不匹配。

您还可以在服务器上创建一个保存拦截器,并调查服务器端实体在保存之前在服务器上实现时的外观。

于 2013-10-17T16:55:55.187 回答