在我的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。
我完全不知道这里发生了什么!微风错误?这完全是奇怪的。
答案 0 :(得分:2)
我首先查看“productMaster”实体类型的元数据。您可以使用Breeze的MetadataStore.getEntityType方法,然后调查数据和导航属性。我的猜测是,这可能会让您更深入地了解问题...可能是您的客户端和服务器代码之间不匹配。
您还可以在服务器上创建一个保存拦截器,并调查服务器端实体在保存之前在服务器上实现时的样子。