当用户在不知不觉中尝试删除具有子节点的实体时,它会失败,因为breeze当前不支持级联删除,这是预期的。
但此操作的副作用是它将实体与本地缓存分离。因此,从用户界面看,这些实体已被删除。
这是预期的行为吗?
是否有直接的方法来检查实体是否有子节点(例如hasChildren())并阻止用户在客户端进入此状态?
答案 0 :(得分:0)
这是预期的行为吗?
是否有直接的方法来检查实体是否有子节点(例如hasChildren())并阻止用户在客户端进入此状态?
是的,有...... 假设你有一个父母“顾客”,它是孩子的“订单” 你的代码可能是这样的:
if (customer.orders()) return 'Your message';
else
return customer().entityAspect.setDeleted();
但是,我同意PW Kad ..我会选择数据库并坐下来。
如果您使用的是SQL Server,则可能需要从那里设置删除级联规则。
为了客户订单,展开“订单”表;你会在“键”下找到FK约束。右键单击然后单击修改。将显示一个对话框;展开“插入和更新规范”将“删除规则”更改为“级联”您也可以设置更新规则..