7

我最近将 Breeze 添加到使用 Knockout 和 ASP.NET MVC4 的项目中。我真的很喜欢 Breeze,它节省了很多编码。

我使用了 Knockout 验证,并且喜欢它如何验证数据输入上的属性字段文本框以及错误消息的显示方式。

我想使用一种组合,其中验证要求在后端与对象属性上的 C# 属性一起定义,验证要求在元数据中接收,然后可以使用 Knockout 验证。

我想我可以通过在前端定义属性并应用 Knockout 验证来解决它,例如

classProperty.extend({ required: true })
             .extend({ minLength: 3 });

有没有办法使用 Knockout 验证而无需在前端应用验证要求?如果没有,您是否正在考虑这样做?

此问题由 johnvarney 在我们的 IdeaBlade 论坛上发布。我在这里重新发布问题和答案,因为我认为它对 Breeze Stack Overflow 社区很有用。

4

1 回答 1

6

您可能已经注意到,Breeze 已经基于元数据执行了验证。基本的“验证”规则,例如是否需要一个属性、它的数据类型以及它的长度(如果在服务器上自动生成一个字符串并发送到客户端)。这些验证规则也可以通过直接修改客户端上的“验证”元数据来扩展。

API 文档中提供了有关此主题的更多信息:http ://www.breezejs.com/sites/all/apidocs/classes/Validator.html 以及 Breeze 示例下载中的“DocCode”示例目录。

我们还计划提供如何将微风验证“连接”到各种第三方库的示例,例如 jQuery 和 Knockout。不幸的是,这些示例目前不是一个高优先级,因为它正在处理其他高要求的功能。您可能想在我们的 Breeze 用户语音https://breezejs.uservoice.com/forums/173093-breeze-feature-suggestions上为这些示例的工作投票。在决定下一步该做什么时,我们会认真对待该场所。

于 2012-11-29T00:02:28.233 回答