网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

ASP.NET Web开发框架项目介绍

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/01/05

项目名称:Enterprise Solution

技术参数

1 C# ASP.NET Web Forms技术,借助于ExtAspNet控件,快速开发

2  SQL Server 数据库。使用LLBL Gen ORM框架进行数据读写,可支持任意的数据库

3  基于LLBL Gen ORM 框架,减少对SQL脚本的依赖,专注于业务逻辑

登录窗体,显示需要登录的数据库

498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' title="image" alt="image" border="0" src="/uploadfile/201301/5/F7152554237.png" />

进入主窗体框架,左边是功能导航,右边是功能列表

498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' title="image" alt="image" border="0" src="/uploadfile/201301/5/77152554726.png" />

点击树节点,右边展开对应的功能项,点击该功能,打开新的选项卡,加载此功能

498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' title="image" alt="image" border="0" src="/uploadfile/201301/5/70152554306.png" />

如果不习惯英语界面,可以点击快速启动栏中的设置,选项中文简体或繁体,界面立即切换成对应的语种

498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' title="image" alt="image" border="0" src="/uploadfile/201301/5/4D152554154.png" />

上图中,选项卡并没有翻译成对应的语言,应该在框架数据库中增加如下翻译,才可以显示正确的语言

  1. exec spAddTranslationText  N''Sales Order''null, N''銷售單'', N''销售单'' 

所有的翻译项目均以此方式完成。可通过查看表LanguageTranslation,对翻译的内容进行变更。

三大基础功能

1  数据输入窗体  继承于此窗体,可以快速实现实体数据的输入与保存,读取

2  报表窗体  继承于此窗体,方便呈现微软的RDLC客户端报表

3  自定义查询 在查询设计器中设计的查询,均可以显示为ASP.NET Web界面,浏览数据记录并导出为EXCEL

五大核心组件

1  菜单设计器 实现界面导航灵活,便于定制

2  报表设计器  灵活设计报表及其参数,方便实现多语言,多种参数传递,数据源自动绑定

3  查询设计器 设计查询,可用于C/S和B/S两种方式呈现

4  工作流设计器 通过拖拉的方式,满足经常发生变化的工作流程(消息通知,审批)

5  开发工具  提供足够数量的辅助工具,以方便开发中的各种需要,开发工具的预览图如下所示

498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' title="image" alt="image" border="0" src="/uploadfile/201301/5/FA152554719.png" />

这些工具,起源于平时的思考和收藏。比如,Enterprise Solution的数据读写代码是借助于Code Smith模板代码,如果需要自动化的传递参数到Code Smith模板中,并生成指定的文件,则需要使用上图中的Smith Builder代码生成辅助工具。再比如,Solution Converter起源于在Visual Studio不同的版本中切换项目,则以此工具为方便。此项目源码来源于CodeProject,在此,我只是把它集成到了Solution  Package中。

项目源代码视图

498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' title="image" alt="image" border="0" src="/uploadfile/201301/5/10152554327.png" />

Business Logic 业务模型实体

Service   数据读写代码,均由代码生成器Smith Builder 生成

ExtAspNet 第三方控件库,在此为了需要进行了部分扩展(extension)

Enterprise Solution Web应用程序的源代码,ASP.NET Web Forms结构。Web项目中,所有的文件夹和页面名称均小写,页面所在的文件夹名称要与其类型的命名空间相符合。来看一个记事本页面的后台源代码

  1. [Function("AIITRL""~/module/note.aspx")]  
  2. public partial class note : EntryPageBase  
  3. {  
  4.         protected override void PageLoadEvent(object sender, EventArgs e)  
  5.         {  
  6.             if (!IsPostBack)             
  7.                 TransactionType = "BlotterEntity";                              
  8.              
  9.             base.PageLoadEvent(sender, e);  
  10.         }  
  11.  
  12.         public override EntityBase2 LoadEntity(string customerNo)  
  13.         {  
  14.             IBlotterManager manager = ClientProxyFactory.CreateProxyInstance<IBlotterManager>();  
  15.             BlotterEntity customer = manager.GetBlotter(Convert.ToInt16(customerNo));  
  16.             return customer;  
  17.         }      
  18.         
  19.         public override void DeleteEntity(EntityBase2 entity)  
  20.         {  
  21.             BlotterEntity user = (BlotterEntity)entity;  
  22.             IBlotterManager manager = ClientProxyFactory.CreateProxyInstance<IBlotterManager>();  
  23.             manager.DeleteBlotter(user);  
  24.         }  
  25.  
  26.         public override void SaveEntity(EntityBase2 entity)  
  27.         {  
  28.             BlotterEntity user = (BlotterEntity)entity;  
  29.             IBlotterManager manager = ClientProxyFactory.CreateProxyInstance<IBlotterManager>();  
  30.             manager.SaveBlotter(user);  
  31.         }      
  32.  } 

这就是基本的数据读写的所有代码,包含读取,删除,保存,均以override的方式存在,由框架类调用。

498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' title="image" alt="image" border="0" src="/uploadfile/201301/5/DB152554172.png" />

记事本功能界面如上图所示,EntryPageBase类型大大简化了数据输入窗体的代码量,专注于逻辑。

原文链接:http://www.cnblogs.com/JamesLi2015/archive/2012/09/17/2688213.html

版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号