前言:

经过前面那么多篇的列表的介绍,终于到了大伙期待的表单开发了。

也是本系列的最后一篇文章了!

1:表单页面的权限设置与继承

对于表单页面,权限的设置有两种:

1:你可以选择添加菜单(设置为不显示)并配置权限。

2:不设置权限,继承自父页面。

因此,如果你单独打开一个没有单独设置权限的页面,得到的效果就是:

2:简单单表的开发Demo

1:新建ArticleEdit.html

html是从UserEdit.html Copy过来简单调整的,毕竟为了统一样式。

当然你也可以自定义样式,那样的话只要关注1、2、3的内容即可。

表单的内容为:

 <div class="line">
<div class="short">
<label><em>*</em>文章分类:</label>
<input name="CateID" objname="C_Demo_ArticleClass" defaultitem="false" />
</div>
<div class="short">
<label>标题:</label>
<input name="Title" missingmessage="" class='easyui-validatebox' />
</div> <div class="short">
<label>创建时间:</label>
<input name="CreateTime" class="easyui-datetimebox" style="width: 150px;" required="true" editable="false" />
</div>
</div>

然后就完事了,不需要写事件。

效果:(按钮没居中的样式问题就先忽略了)

2:原理流程解释:

1:数据如何加载填充?

默认会从父页面拿到objName和tableName,和传过来的id参数传到后端,调用Get方法拿回数据,并加载。

2:不用写事件代码?

框架默认集成了提交事件,默认会从父页面拿到objName和tableName,和搜索表单的数据提交到后端,调用Add或Update处理数据。

3:框架如何识别是Add或Update?

在调用窗体打开的时候,已经指定了方法名。

4:下拉数据是怎么出来的?

还记得大明湖胖的格式化么?就是那个#配置项,或#C_XXX的。

只要对input新增属性即可:

configkey="配置项"

objname="C_XX"

3:自定义表单事件

1:读取加载数据时,如何追加自定义参数到自己写的后台方法?

在加载表单事件之前,修改请求的方法名称为GetMyBlog。

那GetMyBlog方法在哪里定义?

ArticleEdit.html文件所在的文件夹名称为Article,所以,定义一个:ArticleController

把处理后的Json结果交给jsonResult即可。

2:事件 - 表单提交的参数修改:

比如当你引入富文本编辑器如CKEditor或UEEditor等编辑器时,自动收集的表单是收不到它们的,所以需要动态的赋值。

formData 是已经收集好的表单数据,可以修改移除或追加。

更新说明:formData参数由数组变更为json。

用法为:formData.XXX=Value

3:事件 - 表单加载时的参数修改:

同样对于富文本编辑器,系统的自动填充值也是处理不了的,需要动态的赋值。

4:其它信息补充:

1:已经介绍前端怎么指定自定义方法名,后台怎么处理多表?

这是CYQ.Data操作数据库的问题,具体可以看Github网址下的Demo教程链接:

https://github.com/cyq1162/cyqdata

也可以参考系统中的UserEdit.html,默认也是多表处理。

2:对于表单的内容,一个一个写似乎有点复杂,框架有提供表单生成:

在列表页面,通过配置表头,生成表单html中,拿到数据,再调整即可。

好了,入门教程就写到了这里了,不准备发布第10篇了。

写一篇教程不容易,建Demo,F5跑、截图,中间还思考怎么改进代码和使用方式。

所以刚刚还提交了源码更新。

总结:

认真研究的朋友已经发现,不管是前端还是后端,里面都有很多可圈可点地方。

框架在设计上,尽量保持做到着无入侵,完全复盖即升级的方法。

框架在扩展上,都提供了各种手法,而且手法统一。

你要的,都可以通过事件的扩展处理,不需要改动框架的任何源码。

谢谢大伙的关注与支持,本系列到此结束!

ASP.NET Aries 入门开发教程9:业务表单的开发的更多相关文章

  1. Gemini.Workflow 双子工作流入门教程五:业务表单开发

    简介: Gemini.Workflow 双子工作流,是一套功能强大,使用简单的工作流,简称双子流,目前配套集成在Aries框架中. 下面介绍本篇教程:业务表单开发. 业务表单开发 业务表单的开发,和在 ...

  2. ASP.NET Aries 入门开发教程4:查询区的下拉配置

    背景: 今天去深圳溜达了一天,刚回来,看到首页都是微软大法好,看来离.NET的春天就差3个月了~~ 回到正题,这篇的教程讲解下拉配置. 查询区的下拉配置: 1:查询框怎么配置成下拉? 在配置表头:格式 ...

  3. ASP.NET Aries 入门开发教程7:DataGrid的行操作(主键操作区)

    前言: 抓紧勤奋,再接再励,预计共10篇来结束这个系列. 上一篇介绍:ASP.NET Aries 入门开发教程6:列表数据表格的格式化处理及行内编辑 本篇介绍主键操作区相关内容. 1:什么时候有默认的 ...

  4. ASP.NET Aries 入门开发教程6:列表数据表格的格式化处理及行内编辑

    前言: 为了赶进度,周末也写文了! 前几篇讲完查询框和工具栏,这节讲表格数据相关的操作. 先看一下列表: 接下来我们有很多事情可以做. 1:格式化 - 键值的翻译 对于“启用”列,已经配置了格式化 # ...

  5. ASP.NET + MVC5 入门完整教程八 -—-- 一个完整的应用程序(上)

    https://blog.csdn.net/qq_21419015/article/details/80509513 SportsStore 1.开始创建Visual Studio 解决方案和项目这里 ...

  6. ASP.NET MVC 入门系列教程

    ASP.NET MVC 入门系列教程 博客园ASP.NET MVC 技术专题 http://kb.cnblogs.com/zt/mvc/ 一个居于ASP.NET MVC Beta的系列入门文章,有朋友 ...

  7. ASP.NET + MVC5 入门完整教程七 -—-- MVC基本工具(上)

    https://blog.csdn.net/qq_21419015/article/details/80474956 这里主要介绍三类工具之一的 依赖项注入(DI)容器,其他两类 单元测试框架和模仿工 ...

  8. ASP.NET + MVC5 入门完整教程三 (下) ---MVC 松耦合

    建立松耦合组件 MVC 模式最重要的特性之一视他支持关注分离,希望应用程序中的组件尽可能独立,只有很少的几个可控依赖项.在理想的情况下,每个组件都不了解其他组件,而只是通过抽象接口来处理应用程序的其他 ...

  9. ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置

    原文地址: ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置 - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.c ...

随机推荐

  1. Js new到底发生了什么

    在Js中,我们使用了new关键字来进行实例化 那么在这个new的过程中到底发生了什么? 关于构造函数的return 正常来讲构造函数中是不用写return语句的,因为它会默认返回新创建的对象. 但是, ...

  2. 05.LoT.UI 前后台通用框架分解系列之——漂亮的时间选择器

    LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...

  3. ExtJS 4.2 组件的查找方式

    组件创建了,就有方法找到这些组件.在DOM.Jquery都有各自的方法查找元素/组件,ExtJS也有自己独特的方式查找组件.元素.本次从全局查找.容器内查找.form表单查找.通用组件等4个方面介绍组 ...

  4. Centos 下 mysql root 密码重置

    重置mysql密码的方法有很多,官网也提供了很方便的快捷操作办法,可参考资料 resetting permissions .本文重置密码的具体步骤如下: 一.停止MySQL(如果处于运行状态) #se ...

  5. 前端学Markdown

    前面的话   我个人理解,Markdown就是一个富文本编辑器语言,类似于sass对于css的功能,Markdown也可以叫做HTML预处理器,只不过它是一门轻量级的标记语言,可以更简单的实现HTML ...

  6. 简记某WebGIS项目的优化之路

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 该项目为研究生时的老师牵头,个人已毕业数年,应老师要求协助其 ...

  7. C++随笔:.NET CoreCLR之GC探索(2)

    首先谢谢 @dudu 和 @张善友 这2位大神能订阅我,本来在写这个系列以前,我一直对写一些核心而且底层的知识持怀疑态度,我为什么持怀疑态度呢?因为一般写高层语言的人99%都不会碰底层,其实说句实话, ...

  8. await and async

    Most people have already heard about the new “async” and “await” functionality coming in Visual Stud ...

  9. [原] KVM虚拟机网络闪断分析

    背景 公司云平台的机器时常会发生网络闪断,通常在10s-100s之间. 异常情况 VM出现问题时,表现出来的情况是外部监控系统无法访问,猜测可能是由于系统假死,OVS链路问题等等.但是在出现网络问题的 ...

  10. 编写高质量代码:改善Java程序的151个建议(第7章:泛型和反射___建议106~109)

    建议106:动态代理可以使代理模式更加灵活 Java的反射框架提供了动态代理(Dynamic Proxy)机制,允许在运行期对目标类生成代理,避免重复开发.我们知道一个静态代理是通过主题角色(Prox ...