ASP.NET Aries 3.0发布(附带通用API设计及基本教程介绍)-阿里云开发者社区

开发者社区> 晚来风急> 正文

ASP.NET Aries 3.0发布(附带通用API设计及基本教程介绍)

简介:
+关注继续查看

主要更新:

1:升级处理机制(js请求由同步变更为异步)

2:优化前端JS:包括API和配置方式。

3:增加InputDialog功能。

4:增远远程验证功能。

5:优化权限安全机制。

6:增加一次请求多个方法的功能。

7:优化支持文本数据库(为了演示Demo,节省我服务器的资源)

从旧版本升级的注意事项:

Config_Grid表的字段变更:

viewname字段,变更为Rules,长度为250。

MergeIndexed,改名为:MergeIndex。

开源地址:

GitHub:https://github.com/cyq1162/Aries

Demo演示:http://aries.cyqdata.com/login.html (Demo挂回了美国的VPS【少数用户访问可能出现网络慢的问题】,同时用上了文本数据库)

JS API通用设计思维介绍:

1:名称空间:

AR.DataGrid:操作表格和树形表格(需要实例化)。

AR.Upload:操作文件上传(需要实例化,如:导入按钮(点击的时候弹出上传Excel文件功能))。

AR.Form:操作表单页面(如普通的编辑或新增页面)。

AR.Combobox:操作下拉框对象。

AR.Utility:通用工具类:如AR.Utility.Ajax类就在这里面。

AR.Global:全局对象。

2:通用事件与属性:

1:对象(包括按钮)都有$target,获取JQ对象。

2:对象(包括按钮)都有isHidden属性,可以按钮显示或隐藏。

3:对象(包括按钮)都有三个事件(不管是按钮还是对象的初始化):

onBeforeExecute

onExecute(默认都执行这个)

onAfterExecute

处理时,根据业务,找到对应的对象,处理该事件即可。

4:有些对象有Items属性(dg.Search.Items、dg.PKColumn.Items、AR.Global.DG.Items)

5:有些对象有add方法。

AR.DataGrid 简单介绍:

1:支持类型(普通表格(datagrid)和树形表格(treegrid)):

2:示例代码:

var dg=new AR.DataGrid(objName,tableName,id,type);

//这里可以控制参数。

dg.bind();//绑定表格

3:呈现的效果:

或者是:(树形菜单默认是通过右键菜单控制操作)

4:表格常用内部对象:

1:dg.ToolArea:包括搜索(Search)和工具条(ToolBar)。

2:dg.Search:搜索区

3:dg.ToolBar:按钮工具条

4:dg.PKColumn:主键列区

5:dg.HeaderMenu:列头右键菜单

6:dg.ContextMenu:行数据的右键菜单

5:前端JS API编程示例(结合通用对象通用事件,很容易知道在哪处理你要扩展的事件):

比如:你想在点击查询追加条件,那么代码就是:

dg.Search.BtnQuery.onBeforeExecute=function(para){在这里追加条件。}

比如:你想隐藏重置按钮,那么代码是:

dg.Search.BtnReset.isHidden=false;

比如:你想给查询条件某个框赋值,那么代码是:

dg.Search.onAfterExecute=function(para){dg.Search.Items["列名"].val(123);};

也可以在页面加载后处理:

dg.options={

onLoadSuccess:function(){dg.Search.Items["列名"].val(123);}

}

其它细节,在源码Demo里有介绍,这里就点到为止了。

表单:Input相关的配置介绍:

1:远程验证数据是否存在:

<input name="UserName"  class='easyui-validatebox' data-options="validType:'exists[UserName]'"  />

效果:(框架内部隐式的条件参数包括:页面传递的id,AR.Form.tableName)

2:InputDialog

<input name="F4" dialog="Demo_TestA" multiple="true" editable="true" />

单选效果:(第一次运行时,需要配置下表头,隐藏不需要呈现的列,然后调一个搜索框出来)

多选效果:

选择后,是个下拉,还可以再小操作:

3:关于下拉框的具体配置,在Demo里有详细,所以不详说,只上一张图:

配置表头的配置规则(即由viewname变名的Rules字段)

效果:

本配置用于控制搜索区,目前支持$1和$2配置,规则为:

$1:{}处理非下拉:

如果是日期或数据,默认变成区间查询(如上图中的F4字段配置),即默认clone:true,示例配置:

$1:{title:"my title",width:200,clone:false}

$2:{} 处理下拉:

可设按钮宽度,是否多选,是否选择,是否呈现请选择,是否选择时引发查询,示例配置:

$2:{width:200,height:30,isQuery:false,mutiple:true,defaultitem:false}

AR.Utility.Ajax:一次请求多个方法,返回结果合集:

框架里的示例代码:

$Core.Utility.Ajax.post("GetInitConfig,GetKeyValueConfig", null, null, null, null, function (result) {
       $Core.Global.Variable = result.GetInitConfig;
       $Core.Global.Variable.isLoadCompleted = true;
       $Core.Global.Config = result.GetKeyValueConfig;
   });

结果集按方法组合成Json返回。

其它:参考框架Demo,或/Web/SysAdmin/系统系统功能的用法:

总结:

1:本版本亲自操刀前端API(之前版本的前端是交另一个同事编写)。

由于操刀前端,最近每天都折腾到深夜3-4点:

2:提升了性能(之前的同步导致界面1-2秒空白的卡,速度体验感不好)。

3:提升了安全性(之前版本有一定的权限安全问题)。

4:增强前端使用体验。


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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
菜鸟入门【ASP.NET Core】9:RoutingMiddleware介绍以及MVC引入
前言 前面介绍了使用app.Map来配置路由,但是对于一般不是特别大的项目来说,不使用Map来进行路由配置。 配置路由 我们首先需要在Startup.cs文件中的ConfigureServices方法中进行路由依赖注入 services.
888 0
菜鸟入门【ASP.NET Core】8:Middleware管道介绍、自己动手构建RequestDelegate管道
中间件:是汇集到以处理请求和响应的一个应用程序管道的软件。 每个组件: 可以选择是否要将请求传递到管道中的下一个组件。 之前和之后调用管道中的下一个组件,可以执行工作。 使用请求委托来生成请求管道。
1239 0
Kubernetes监控之Heapster介绍
什么是Heapster? Heapster是容器集群监控和性能分析工具,天然的支持Kubernetes和CoreOS。 Kubernetes有个出名的监控agent---cAdvisor。在每个kubernetes Node上都会运行cAdvisor,它会收集本机以及容器的监控数据(cpu,memory,filesystem,network,uptime)。
1097 0
菜鸟入门【ASP.NET Core】12:JWT 设计解析及定制
前言 上一节我们讲述的书如何使用jwt token,而且上一节的token是要加Authorization:bearer XXXXXXXXXXXX才能访问。 这一节我们来研究如何自定义类似jwt的token验证,也就是说直接从header中拿取我们想要的token 自己定制JWT 首先,继续在上一节的JwtAuthSample项目中的Startup.
1798 0
云服务OpenAPI设计的7大挑战
引言 关于API的设计与开发,在业界已经进行了很多讨论,无论是API的具体设计原则,还是针对API的规范性指引,都层出不穷。而RESTful的API设计风格的讨论在近年来也是愈加热闹,比较好的API设计样板可以参考 github 和 k8s ,它们都是典型的RESTful接口。
1154 0
教程: Ext 2.0 介绍
本教程适用于Ext 2.0的版本,而版本1.x仍可找到。 无论你是Ext库的新手,抑或是想了解Ext的人,本篇文章的内容都适合你。本文将简单地介绍Ext的几个基本概念,和如何快速地做出一个动态的页面并运行起来,假设读者已具备了一些JavaScript经验和简单了解HTML的文档对象模型(document object model ,DOM)。
873 0
API的设计与实现
关于API的设计与实现 API的设计是软件开发中一个独特的领域。最主要的特殊点在于API是供开发者使用的界面,即Application Programmer Interfaces。
991 0
+关注
9380
文章
243
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载