Breeze 搜寻保存结果错误
我一直在寻找帮助,试图找出一个hasChanges在成功完成saveChanges返回后仍然为true的bug。我正在同时保存一个实体和嵌套实体,当它返回时,我的saveResult显示为一个数组,第一个对象显示父实体,第二个对象是$ref。但是,我的一个EntityGroup说它仍有更改,因此它的行为好像需要再次保存 一件有趣的事情是,我用不同的嵌套实体保存了一个不同的集合,它以嵌套实体作为saveResult数组中的第一个对象返回,我的父实体是$ref。我尽了最大努力确保两个嵌套实体模型看起来相同。如果有人有任何想法或建议,我会很乐意给他们一个尝试,并希望解决这个问题Breeze 搜寻保存结果错误,breeze,Breeze,我一直在寻找帮助,试图找出一个hasChanges在成功完成saveChanges返回后仍然为true的bug。我正在同时保存一个实体和嵌套实体,当它返回时,我的saveResult显示为一个数组,第一个对象显示父实体,第二个对象是$ref。但是,我的一个EntityGroup说它仍有更改,因此它的行为好像需要再次保存 一件有趣的事情是,我用不同的嵌套实体保存了一个不同的集合,它以嵌套实体作为saveResult数组中的第一个对象返回,我的父实体是$ref。我尽了最大努力确保两个嵌套实体模型看起
{
"$id":"1",
"$type":"Breeze.ContextProvider.SaveResult, Breeze.ContextProvider",
"Entities":[
{
"$id":"2",
"$type":"CoreDBCodeFirst.Person, CoreDBCodeFirst",
"LastName":"Washington",
"FirstName":"George",
"MiddleName":null,
"SocialSecurity":null,
"DateOfBirth":"1974-12-10T06:00:00.000Z",
"Gender":"M",
"Language":"en-US",
"IdNumber":null,
"Eligibility":true,
"Active":true,
"PersonAddresses":[
{
"$id":"3",
"$type":"CoreDBCodeFirst.PersonAddress, CoreDBCodeFirst",
"Address1":"13000 S Dakota 244",
"Address2":null,
"Zip":"57751",
"City":"Keystone",
"State":"SD",
"IsPrimary":false,
"Active":true,
"PersonId":20118,
"Person":{
"$ref":"2"
},
"id":20108
}
],
"FullName":"Washington, George",
"Email":null,
"id":20118
},
{
"$ref":"3"
}
],
"KeyMappings":[
{
"$id":"4",
"$type":"Breeze.ContextProvider.KeyMapping, Breeze.ContextProvider",
"EntityTypeName":"CoreDBCodeFirst.Person",
"TempValue":-1,
"RealValue":20118
},
{
"$id":"5",
"$type":"Breeze.ContextProvider.KeyMapping, Breeze.ContextProvider",
"EntityTypeName":"CoreDBCodeFirst.PersonAddress",
"TempValue":-2,
"RealValue":20108
}
],
"Errors":null
}
需要更多的细节
什么是服务器技术
你打什么电话?您是否指定了要保存的实体或要求保存整个缓存
在调试会话中,捕获保存manager.getChanges的实体列表,并将其与响应中的saveResult.entities进行比较;是否缺少任何实体
保存后未保存的实体有什么值得注意的地方吗?只要您看到函数的返回值代替了实体,您的元数据肯定有问题;通常与导航属性之一的定义有关。您可以发布Person和PersonalAddress的元数据吗?我正在使用EF 6.1.0作为服务器技术。我正在指定要保存的实体类型。检查my manager.getChanges时,我有一个包含两个实体的数组。当它返回saveResult.entities时,它是一个数组,第一个数组相同,数组中的第二个项目是函数{return mappingContext.refMap[nodeRefId];}],我知道这个。我只是不记得了:请为这两个实体粘贴来自服务器的序列化响应。我怀疑与第二项关联的$id和$refId之间不匹配。指定要保存的实体类型是什么意思?这不是一个选择。可以指定实体数组,也可以不指定。但您不能指定要保存的实体类型。已编辑的问题和回答。当我说指定要保存的实体类型时,我指的是指定数组,所以我不想偏离另一个方向。