• 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

  • 相关阅读:
    (1)前言——(10)jquery项目的历史(History of the jQuery project)
    JavaScript编程:使用DOM操作样式表
    机房收费系统总结之4——VB.NET 轻松解决判断文本框、组合框为空问题
    协同过滤及大数据处理
    Storm工作流程 vs. Spark Stream
    《大数据技术原理与应用》学习
    gdb的follow-fork-mode使用以及多线程操作
    回上海咯!继续学习计算广告
    美团技术博客
    这里面有一些关于依图工作的内容
  • 原文地址:https://www.cnblogs.com/JamesLi2015/p/2716089.html
Copyright © 2020-2023  润新知