Breezejs 1.5.4和1.5.5 LinkeRelatedEntities用于1对1单向父对子导航属性抛出异常

时间:2015-10-08 16:52:59

标签: breeze

有这种关系

Parent Entity
    Id
    ChildNavigationProperty    

Child Entity      
   Id // P-Key and F-Key to parent Entity

当Breeze执行proto._linkRelatedEntities函数以链接父实体的相关实体时

这样做:

if (np.isScalar) {
   // n -> 1  eg: child: OrderDetail parent: Product
   // 1 -> 1 eg child: Employee parent: Employee 
   // ( only Manager, no DirectReports property)
   childToParentNp = np;
   unattachedChildren.forEach(function (child) {
       child.setProperty(childToParentNp.name, entity);
   });
}

这会引发异常,因为它试图在子实体而不是父实体上找到ChildNavigationPropertythis[propertyName] = value;其中“this”是“子实体”,“propertyName”是“ChildNavigationProperty”,“value”是“父实体”

在Breeze v1.5.3中执行此操作:

entity.setProperty(parentToChildNp.name, unattachedChildren[0]);

对我而言,这看起来更正确,是我有雾吗?

0 个答案:

没有答案