当主/外键基于表中的多个列时,我遇到了一些问题。 在创建新对象后保存时一切正常,但是当客户端在保存后更新其fk_data时,breeze正在混合关键列。 这导致关键列中的数据错误,而微风认为某些内容会再次被修改。
这一切都发生在这里breeze.debug.js:
// update fk data property - this can only occur if this navProperty has
// a corresponding fk on this entity.
if (property.relatedDataProperties) {
if (!entityAspect.entityState.isDeleted()) {
var inverseKeyProps = property.entityType.keyProperties;
inverseKeyProps.forEach(function(keyProp, i ) {
var relatedDataProp = property.relatedDataProperties[i];
// Do not trash related property if it is part of that entity's key
if (newValue || !relatedDataProp.isPartOfKey) {
var relatedValue = newValue ? newValue.getProperty(keyProp.name) : relatedDataProp.defaultValue;
that.setProperty(relatedDataProp.name, relatedValue);
}
});
}
}
inverseKeyProps与正确的relatedDataProp不匹配。
这是微风中的错误吗?
答案 0 :(得分:0)
我认为这与edmx文件中fk_keys的顺序有关。 为什么订单与我现在没有的数据库不同。
TJ