ASP.NET Aries 入门开发教程9:业务表单的开发

简介:

前言:

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

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

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 是已经收集好的表单数据,可以修改移除或追加。

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

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

4:其它信息补充:

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

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

https://github.com/cyq1162/cyqdata

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

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

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

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

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

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

总结:

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

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

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

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

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


本文原创发表于博客园,作者为路过秋天,原文链接:http://www.cnblogs.com/cyq1162/p/6081996.html

相关文章
|
14天前
|
人工智能 量子技术 C#
【专栏】.NET 开发:开启数字化新时代
【4月更文挑战第29天】.NET开发在数字化新时代中发挥关键作用,借助跨平台能力、高性能和现代编程语言支持,如C#,助力企业实现数字化转型。通过企业级应用开发、移动应用和云计算集成,.NET加速业务流程和提升用户体验。未来,.NET将涉足AI、ML、MR/AR及量子计算,持续推动技术创新和数字化转型。开发者应提升技能,适应高性能需求,把握发展机遇。
|
14天前
|
缓存 监控 算法
【专栏】.NET 开发:实现卓越性能的途径
【4月更文挑战第29天】本文探讨了.NET开发中的性能优化,强调了理解性能问题根源和使用分析工具的重要性。基础优化包括代码优化(如减少计算、避免内存泄漏)、资源管理及选择合适算法。高级策略涉及并行编程、缓存策略、预编译(AOT)和微服务架构。持续性能测试与监控是关键,包括性能测试、监控分析和建立优化反馈循环。开发者应持续学习和实践性能优化,以构建高性能应用。
|
14天前
|
开发框架 .NET C#
【专栏】理解.NET 技术,提升开发水平
【4月更文挑战第29天】本文介绍了.NET技术的核心概念和应用,包括其跨平台能力、性能优化、现代编程语言支持及Web开发等特性。文章强调了深入学习.NET技术、关注社区动态、实践经验及学习现代编程理念对提升开发水平的重要性。通过这些,开发者能更好地利用.NET构建高效、可维护的多平台应用。
|
14天前
|
机器学习/深度学习 vr&ar 开发者
【专栏】.NET 技术:引领开发新方向
【4月更文挑战第29天】本文探讨了.NET技术如何引领软件开发新方向,主要体现在三方面:1) 作为跨平台开发的先锋,.NET Core支持多操作系统和移动设备,借助.NET MAUI创建统一UI,适应物联网需求;2) 提升性能和开发者生产力,采用先进技术和优化策略,同时更新C#语言特性,提高代码效率和可维护性;3) 支持现代化应用架构,包括微服务、容器化,集成Kubernetes和ASP.NET Core,保障安全性。此外,.NET还不断探索AI、ML和AR/VR技术,为软件开发带来更多创新可能。
|
14天前
|
物联网 vr&ar 开发者
【专栏】.NET 技术:为开发注入活力
【4月更文挑战第29天】本文探讨了.NET技术的创新,主要体现在三个方面:1) .NET Core实现跨平台开发革命,支持多种操作系统和硬件,如.NET MAUI用于多平台UI;2) 性能提升与生产力飞跃,C#新特性简化编程,JIT和AOT优化提升性能,Roslyn提供代码分析工具;3) 引领现代化应用架构,支持微服务、容器化,内置安全机制。未来,.NET 7将带来更多新特性和前沿技术整合,如量子计算、AI,持续推动软件开发创新。开发者掌握.NET技术将赢得竞争优势。
|
4月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
47 0
|
18天前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
22 0
|
2月前
|
开发框架 前端开发 .NET
进入ASP .net mvc的世界
进入ASP .net mvc的世界
32 0
|
2月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
116 5
|
9月前
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
124 0