Breeze 如何添加集合级验证
如何在Breeze中实现集合级验证 假设我有一个3行的集合。我想确保使用百分比列的总和为100 行数可以变化(动态),可以是1-10行之间的任意行。 每个父行可以有不同的子行集合Breeze 如何添加集合级验证,breeze,Breeze,如何在Breeze中实现集合级验证 假设我有一个3行的集合。我想确保使用百分比列的总和为100 行数可以变化(动态),可以是1-10行之间的任意行。 每个父行可以有不同的子行集合 a) Parent Row1 ID %used 1 20 2 40 3 40 ======== 100 b) Parent Row 2 ID %used 1) 50 2) 50 ======== 100 以此类
a) Parent Row1
ID %used
1 20
2 40
3 40
========
100
b) Parent Row 2
ID %used
1) 50
2) 50
========
100
以此类推为了澄清,我假设您的问题是您有一个entityType,它有一个集合导航属性,您想验证它的内容。例如,您可能希望确保订单中所有订单详细信息的总运费低于100美元 这可以通过向entityType添加“实体级别”验证来实现。i、 例如
myEntityType = myEntityManager.getEntityType("Foo");
myEntityType.validators.add( myCustomValidator);
有关更多信息,请阅读breeze验证文档
验证器本身基本上应该迭代从所需导航属性返回的结果,并在迭代过程中计算的某个聚合上执行其验证
实体级验证(如此)将在保存过程中自动执行,但如果希望在导航属性的“内容”被修改时执行此验证,则还需要查看“relationArray.arrayChanged”事件。breeze中的每个集合导航属性都是“relationArray”,因此您可以在感兴趣的每个关系数组上订阅此事件,并在看到更改时调用父实体验证
我们希望在某些时候向breeze文档中添加其他验证示例。如果您觉得这会有帮助,请添加此项目并立即投票支持
希望这有帮助 Naunihal,这充分回答了你的问题吗?如果是这样的话,请接受它,这样我们就可以关闭车票了。谢谢你和我们在一起。