• ASP.NET Web开发框架之八 所有ERP部分的源代码全部开放下载


    前面的文章讲解了技术细节,这一篇来了解一下这个框架的制作前后,经历的一些思考。代码只对部分需要的朋友有用,重要的是经历和思路。前后花了3个月的时间,完成了这个基础的ASP.NET页面框架。

    功能导航

    来看一个整体的效果图,围绕这个图,看图说话,看看各个部分是如何完成的。

    image

    ERP系统功能多,如何设计一个简洁的界面,承载它的功能导航,一努力追求的目标。这里的菜单均是用菜单设计器设计出来,代码中只是读出来,并呈现成树结构。一段时间曾把它分离到X_Menu表中,后来又合并代码,直接读取框架的菜单表,这样达到B/S与C/S的统一。虽然不可能同时有两种实现,但以此为技术追求,寻求好的实现方法。

    同步对比一下,C/S程序上的实体,和上面的界面模式几乎相同。

    image

    来看一个具体菜单项System Administration的界面模式,它如下图所示

    左边的树节点,右边展示了它下面的功能类型,这个部分的设计,以菜单设计器设计它,先是功能类别,再为具体功能。

    数据库

    SQL Server是首选的数据库平台。其次,SQL Server有许多版本,高版本的可读取低版本的数据文件,但是一旦附加进入后,低版本的SQL Server再也无法读取这个文件。一开始以SQL Server 2008 R2开发,后来意识到要兼容于客户方面的的选择,果断把所有数据都迁移到SQL Server 2005中。版本信息是

    SELECT @@VERSION
    Microsoft SQL Server 2005 - 9.00.4035.00 (Intel X86)   Nov 24 2008 13:01:59   Copyright (c) 1988-2005 Microsoft Corporation  Express Edition with Advanced Services on Windows NT 6.1 (Build 7601: Service Pack 1) 

    image

    一个主数据库Framework,业务数据库为TS。请先配置数据库的主从关系,设定TS的数据库属性。

    image

    框架会为你做很多基础的工作,这个简单的配置,可以减少很多基础的重复的工作量。

    应用程序结构

    首选为插件式结构。框架只关注于自己的基础数据读写,当遇到具体业务数据时,以反射方式交给业务类型去执行。

    每个应用分四层,界面层Presentation,接口层IService,接口实现层Manager,业务实体层Businss Logic。

    业务逻辑层为LLBL Gen生成,接口层和实现层由Code Smith生成,界面则根据应用布局,并绑定数据属性。

    image

    ExtAspNet控件进行了部分定制,修改了少量源码以满足框架的应用需要。原计划是以它为基础进行Extension的,后来发现这样增加了测试的时间,也不利于修改维护,于是直接修改源码。这样带来的问题是当ExtAspNet控件有新版本时,需要手工合并代码。选择Beyond Compare对比两个版本的文件夹,有差异的地方用不同的颜色区分,打开一个文件后,合并到另一边,保存即可。

    数据操作模式

    有五种数据操作模式

    1 单一实体表 例子比如上面提到的Company.aspx页面

    2 主从表 比如销售单,有主表销售单表头和销售单明细表

    image

    有表头和表明细,一对多的关系。

    3 List列表 比如要对一个或多个表进行查询,显示到一个页面中

    image

    4 Lookup 查找 用于数据选择  数据查询

    5 Query 自定义查询 用户自定义查询转化为页面功能

    与List相似,只不过这是由查询设计器设计出来的,List由程序编码完成。

    在数据操作模式一节中,这个问题还要详细讨论,它对数据读写影响很大。

    下载地址: https://files.cnblogs.com/files/JamesLi2015/EnterpriseSolutionWebSource.rar

  • 相关阅读:
    Spark的Shuffle机制
    Map Reduce的代码学习
    本地IDEA跑阿里云服务器Word Count
    HDFS的类学习和API基本操作
    本地IDEA(Windows)访问ECS服务器HBase
    本地IDEA访问ECS服务器HDFS
    阿里云ECS大数据环境搭建
    学会使用vue ui搭建项目
    用vue封装视频预览组件(手机端)
    项目中的部门使用级联选择器,编辑时初始化选中部门解决方案
  • 原文地址:https://www.cnblogs.com/JamesLi2015/p/2716089.html
Copyright © 2020-2023  润新知