- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
3.4平台通用配置深圳市信息职业技术学院——验证规则配置实现
目录验证规则开发实现示例01框架验证规则实现逻辑介绍02框架验证规则实现03经验总结04
知识回顾根据需求进行主从表功能UML建模;主从表功能的开发实现步骤;初始菜单配置;运行项目生成数据库表、序列、更新元数据和配置菜单;能够独立进行主从表功能的问题修复;能够对功能进行扩展,完成一主多从、主从孙关系的功能开发实现
学习目标通过本节学习可以:掌握框架验证规则包括哪几种实现方式,不同的实现方式有什么差异?掌握不同验证规则的开发实现步骤;能够修复验证规则开发过程中的bug。
01验证规则开发实现示例
思考题通过前面课程的学习,我们知道框架验证可以在哪里进行配置实现?可以在实体属性中标记规则特性,然后进行实体元数据的更新。
业务描述业务描述读者分类增加验证:读者分类被读者管理引用后,不允许删除读者管理增加验证:1、读者编号、姓名联合验证唯一2、手机号验证输入格式3、已借书数量不能大于读者分类中维护的可借书数量
开发实现-读者分类被读者管理引用后不允许删除实现逻辑:可以用框架的规则去实现,引用后不允许删除使用框架的引用规则,需要自己在服务端建一个规则类,以Rule进行结尾,继承NoReferencedRule进行实现,如下图实现:开发实现
开发实现-读者管理中读者编号、姓名联合验证唯一实现逻辑:该验证的实现可以使用非重复验证来实现,这里以规则类的方式开发实现:开发实现
开发实现-读者管理中手机号输入格式验证实现逻辑:该验证的实现可以使用实体规则进行验证,也是需要建一个规则类进行实现:开发实现
开发实现-已借书数量不能大于读者分类中维护的可借书数量实现逻辑:该验证的实现也可以通过实体规则进行验证。开发实现注意:以上所有的规则实现都要进行实体元数据的更新才会生效,修改了对应的规则需要重新进行实体元数据的更新。
思考题前面示例验证规则的实现中,继承的父类包括哪些?
02框架验证规则实现逻辑介绍
框架验证规则实现逻辑介绍通过前面单表、主从表的开发和刚刚的验证规则示例中可以看出,我们的规则可以在实体属性中标记特性进行实现,也可以在服务端定义规则类进行实现,之间有什么差异呢?从实现可以看出,在实体中标记的特性只能是对该属性的简单验证;对于复杂验证或者是属性之间的联合验证无法在实体中标记特性,就需要引入规则类进行实现。两者的相同点就是:实现完成后都需要进行实体元数据的更新才会生效。框架验证规则实现逻辑
框架验证规则实现逻辑介绍框架验证规则逻辑的实现:框架针对单个属性的简单验证是在实体属性中标记特性进行实现的(这些也可以在验证方法中进行实现),框架在生成表格或者表单的时候,将属性的这些特性和属性对应Ext控件一起生成返回到前端,然后前端解析将可以转换为Ext控件的验证规则转换为控件规则,在操作控件时,在对应控件中有红色框框显示(这种是做了前后端双重验证);不能转换的,保存数据时给出具体的异常提示(只做了后台验证)。对于复杂的验证,如规则类中实现的规则,是无法解析为对应控件的验证,则是在后台进行数据的验证处理,即通过RF.Save()保存数据前,去调用实体对应的验证,验证不通过给出具体的异常提示(走的后台验证)。框架验证规则实现逻辑
03框架验证规则的实现
思考题框架验证规则的实现方式包括几种?分别是?
框架验证规则实现方式框架通用的验证方式,框架提供了三种实现方式,分别为运行时规则、标准规则和预编译规则。1、运行时规则:1)通过在实体元数据模块进行运行时配置的规则,如字段长度、非空等验证。如果是部署的服务,添加或者修改了配置规则,需要重启服务。2)在实体属性中标记特性,只能标记非空,非重复,最大长度,最小长度,最大值和最小值,标记的特性是针对单个属性的验证,标记完成后需要对实体元数据进行更新操作,验证才会生效。说明:该种方式实现的规则如果在实体元数据规则类中把对应规则禁用了,即使在代码中标记了对应的规则,也不会生效;规则删除后,实体元数据的规则不能自动删除,需要手动把对应的规则删除或者是禁用。验证规则的实现方式
框架验证规则实现方式2、标准规则:在实体配置中重写AddValidations()方法实现规则验证,编写代码运行项目后立即生效,不可配置。3、预编译规则:通过C#代码的方式实现验证规则,然后在实体元数据功能进行更新并配置启用。包含的规则父类:实体规则(继承EntityRuleT)、非重复规则(继承NotDuplicateRuleT)、删除被引用规则(继承NoReferencedRuleT)说明:预编译规则也需要在实体元数据中进行更新才会生效,如果规则的类名修改了,原来类名生成的规则不会自动删除,会根据新的类名重新生成
您可能关注的文档
- MES开发与应用 课件 1.1.1-1.1.3 工业管理软件系统技术栈介绍(2).pptx
- MES开发与应用 课件 1.1.4 工业管理软件系统技术栈介绍-认识C#语言.pptx
- MES开发与应用 课件 1.1.5 工业管理软件系统技术栈介绍-C#编程基础.pptx
- MES开发与应用 课件 1.1.6 工业管理软件系统技术栈介绍-面向对象基础.pptx
- MES开发与应用 课件 1.1.7 工业管理软件系统技术栈介绍-面向对象高级.pptx
- MES开发与应用 课件 1.1.8 工业管理软件系统技术栈介绍-集合.pptx
- MES开发与应用 课件 1.1.9 工业管理软件系统技术栈介绍-C#常用类.pptx
- MES开发与应用 课件 1.1.10 工业管理软件系统技术栈介绍-文件操作.pptx
- MES开发与应用 课件 1.1.11 工业管理软件系统技术栈介绍-使用ADO.NET操作系统.pptx
- MES开发与应用 课件 1.1.12 工业管理软件系统技术栈介绍-Linq常用语法.pptx
文档评论(0)