AgileEAS.NET平台开发实例-药店系统-UI层分析

简介:

介绍

       上一篇我们给出了AgileEAS.NET的关于Bll层的实现原理和Bll层的写法,我们可以在实际的开发过程中更深入的了解和实践,本篇我们就来讲述下UI层的实现原理和相关的

技巧,可能会和之前讲述的环境配置部分内容会有小部分的冲突吧,不过应该本篇讲述的更具有原理方面的内容,本文会讲述资源管理平台如何通过插件+平台的思路来实现这

种资源化的管理平台的原理和技术内幕。当然由于本人对AgileEAS.NET平台的理解的深度不足,或者说是认识上还有一定的偏差,可能会有错误之处,当然如果您有更深入的

了解,还请批评指正。

       AgileEAS.NET平台采用的是平台+插件的设计思路,具体的UI层表示可以简单理解成如下图    image

        通过上图我们知道符合插件契约的模块才能被资源管理平台识别,否则无法被资源管理平台识别和管理,也就无法享受容器提供的相关服务。

        当然我们也可以不用AgileEAS.NET平台提供的资源管理工具,我们直接使用普通的Form窗体作为主窗体运行,也是可以的,不过AgileEAS.NET平台为我们提供了很多

底层模块的一些服务,例如组件的资源分配,动态释放对象,对象复活等,对象的生命周期等等。这些我们都要自己开发的过程中进行考虑。

         下面我们来分析下如何新建一个新的应用程序来结合使用UI层,一种方式是自定义的不使用AgileEAS.NET平台提供的资源管理器。一种是使用该资源管理器来管理一个

模块。

大纲

         1、不使用AgileEAS.NET平台的资源管理器来构建UI

         2、使用AgileEAS.NET平台提供的资源管理器来开发模块。

不使用AgileEAS.NET平台开发界面UI

        我们这里说的是不是AgileEAS.NET平台提供的资源管理平台来开发功能模块,那就意味着我们这里开发的用户界面不用定义插件的契约,直接构建一个应用程序即可,但

是我们还是想使用之前我们已经写好的DAL与业务逻辑层时,这时候我们需要如何去写呢?这个我想是大家比较关心的内容。下面我们就来一步步的构建不依赖插件契约的应

用程序模块。

        1、新建一个Winform窗体应用程序工程:

         image

         2、点击“确认”后,我们查看解决方案结构:

         image

         3、重命名“From1”为“MainForm”:

         image

         接下来,我们将项目中要用到的Bll层与DAL层及这2层依赖的Dll程序集引用也加入进来。

         image

        4、我们从工具箱拖拽一个panel来存放查询条件区,再拖放一个panel用户显示数据空间区。

         image

        5、添加如下控件,我们添加一个下拉列表控件用于显示药品类型“DrugType”,添加一个关键字,用于检索包含指定关键字的药品记录。

         image

         6、我们来边写具体的业务逻辑。

         image

         7、书写查询方法:

         image

        8、增强使用,我们在当输入“关键字”按下“回车”时执行查询:

        image

        9、通过上面的几步,我们就完成了基本的业务逻辑功能,下面我们再添加一个配置文件:

        image

        添加如下配置节信息到该配置文件中:

        image

        image

        点击保存,设置该工程为启动工程,“F5”运行:

         image

         我们输入关键字来查询吧,或者直接点击查询,如果库存中存在药品类型是“放射材料”的药品则会显示:

         image

         这样我们就开发出一个简易的用户界面程序,当然其他模块的开发也是类似的,我这里就不一一阐述了。

使用AgileEAS.NET平台提供的资源管理器来开发模块

        我们还是新建一个模块,但是该模块是通过插件的形式来访问,此时我们有个限制是需要搭建插件的测试环境,否则无法加载插件,具体的关于插件的测试环境的搭建请

参考如下几篇文章。

        AgileEAS.NET平台开发实例-药店系统-准备开发环境(上)

        AgileEAS.NET平台开发实例-药店系统-准备开发环境(中)

        AgileEAS.NET平台开发实例-药店系统-准备开发环境(下)

        上面的几篇讲述了如何搭建AgileEAS.NET的开发环境及插件的测试环境,环境一旦搭建好,一般来说我们的模块的开发步骤是如下几步?我这里直接讲述具体的业务开发

过程吧。

         1、新建“Winform应用程序”,新建后删除系统自动创建的Winform1和program静态程序入库函数:

         image

         2、添加引用。

         image

         3、修改工程的输出路径:

         image

         4、这样就配置完毕了,新建一个用户控件,用于完成库存查询功能的模块。

          image

          5、接着我们来设计界面:

         image

          6、添加相应的方法,与之前的Winform版本的方法完全相同。我这里不列出,我只给出关键的契约说明。

          image

         7、最终的界面效果如下:

         image

          8、在测试工程中,将要测试的UI的dll配置修改为我们刚才新添加的应用程序工程。

          image

          9、修改的配置文件的具体内容如下:

          image

         10、运行“F5”如果出现如下界面说明成功。

          image

          输入密码即可见到资源管理平台的全貌了

           image

           我们点击“库存查询”:

           image

           我们点击查询,满足查询条件的记录将会显示:

           image

           这样我们就完成了模块的开发。其他的插件模块的开发也是如此的快捷和简单。

总结

        本文分析和讲述了,如何开发UI层的过程和剖析 ,可能由于本人的水平有限,对底层的实现原理剖析的还不够深刻,后续还需要往更深入的方向挖掘,当然如果你又更好

的意见和建议可以提出来,我会不断的改进,谢谢!下篇将会书写一些在界面实现过程中的一些技巧和业务逻辑的设计讲解分析。



本文转自何戈洲博客园博客,原文链接:http://www.cnblogs.com/hegezhou_hot/archive/2011/04/01/2002383.html,如需转载请自行联系原作者

目录
相关文章
|
1月前
|
Go
在golang中发起http请求以获取访问域名的ip地址实例(使用net, httptrace库)
这只是追踪我们的行程的简单方法,不过希望你跟着探险家的脚步,即使是在互联网的隧道中,也可以找到你想去的地方。接下来就是你的探险之旅了,祝你好运!
82 26
|
2月前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
|
4月前
|
人工智能 芯片
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
|
6月前
|
Linux API C#
基于 .NET 开发的多功能流媒体管理控制平台
基于 .NET 开发的多功能流媒体管理控制平台
118 9
|
16天前
|
开发框架 前端开发 JavaScript
【HarmonyOS Next之旅】基于ArkTS开发(二) -> UI开发一
本文介绍了方舟开发框架(ArkUI)及其两种开发范式:基于ArkTS的声明式开发范式和类Web开发范式。ArkUI是用于构建HarmonyOS应用界面的UI框架,提供极简UI语法和基础设施。声明式开发范式使用ArkTS语言,以组件、动画和状态管理为核心,适合复杂团队协作;类Web开发范式采用HML、CSS、JavaScript三段式开发,适用于简单界面应用,贴近Web开发者习惯。文中还概述了两者的架构和基础能力,帮助开发者选择合适的范式进行高效开发。
67 15
|
16天前
|
编解码 前端开发 Java
【HarmonyOS Next之旅】基于ArkTS开发(二) -> UI开发三
本文介绍了基于声明式UI范式的图形绘制与动画效果实现方法,涵盖绘制图形、添加动画效果及常见组件说明三部分内容。在绘制图形部分,详细讲解了如何通过Circle组件为食物成分表添加圆形标签,以及使用Path组件结合SVG命令绘制自定义图形(如应用Logo)。动画效果部分则展示了如何利用animateTo实现闪屏动画,包括渐出、放大效果,并设置页面跳转;同时介绍了页面间共享元素转场动画的实现方式。最后,文章列举了声明式开发范式中的各类组件及其功能,帮助开发者快速上手构建复杂交互页面。
55 11
|
16天前
|
存储 开发框架 API
【HarmonyOS Next之旅】基于ArkTS开发(二) -> UI开发二
本文详细介绍了基于声明式UI开发的健康饮食应用的设计与实现过程。内容涵盖从基础环境搭建到复杂功能实现的全流程,包括创建简单视图、构建布局(如Stack、Flex)、数据模型设计、列表与网格布局构建,以及页面跳转和数据传递等核心功能。 本文通过实际案例深入浅出地解析了声明式UI开发的关键技术和最佳实践,为开发者提供了宝贵的参考。
55 14
|
9天前
|
JavaScript 前端开发 UED
【HarmonyOS Next之旅】基于ArkTS开发(二) -> UI开发四
本文介绍了Web组件开发与性能优化的相关内容。在Web组件开发部分,涵盖创建组件、设置样式与属性、添加事件和方法以及场景示例,如动态播放视频。性能提升方面,推荐使用数据懒加载、条件渲染替代显隐控制、Column/Row替代Flex、设置List组件宽高及调整cachedCount减少滑动白块等方法,以优化应用性能与用户体验。
32 1
|
12天前
|
JavaScript 前端开发 开发者
09.HarmonyOS Next数据驱动UI开发:ForEach与动态渲染完全指南(上)
在现代前端开发中,数据驱动UI已成为主流开发范式。HarmonyOS Next的ArkTS语言和声明式UI框架完美支持这一理念,使开发者能够以更高效、更直观的方式构建复杂应用。
44 1
|
4月前
|
前端开发 安全 开发工具
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
267 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex

热门文章

最新文章