首页 > 代码库 > Navi.Soft20.WinForm操作手册
Navi.Soft20.WinForm操作手册
1概述
1.1应用场景
尽管互联网高速发展,互联网软件也随之越来越多,但桌面应用程序在某些领域中还是不可替代,如MIS,ERP,CRM等软件产品,同时,这类软件均包括一些通用的功能,如:与数据库操作,日志管理,权限管理等
本框架指在解决这些问题,并将通用的功能抽离并实现.使在开发过程中,将更多的精力放在业务逻辑
1.2面向对象
Net程序开发员
1.3开发环境
解决方案 | 开发环境 | 描述 |
NaviSoft20 | VS2010或以上 | 整个框架只有此一个解决方案.Net类库包含2种.分别是Net4.0和Net4.5, |
1.4框架特点
l 经典三层架构,上手容易,入门简单
l 操作数据库支持ORM和ADO.Net两种方式.灵活
n 支持多数据库,包括SQLServer,Oracle,SQLite,Access,且项目中可同时操作多数据库
n 采用EntityFramework框架.轻量级ORM框架,微软原创,值得信赖
l 主界面支持三种导航菜单,分别是OutlookBar,Tree和TabPage
l 多语言,包括英文,中文简体,中文繁体
l 换肤,支持多达60种皮肤
l 内置各种常用组件
n 自动升级组件
Ø 局域网中,只需将升级文件发至服务器上即可,客户端可自动更新
n 图表组件
Ø FusionChart图表.WebForm和WebMVC均可以使用,提供对该组件的操作帮助类
Ø MSChart图表,目前仅提供WinForm版本的简易操作示例(注:若深入研究,请参考微软官方提供的示例DEMO)
n 数据库操作组件
Ø 包括对SQLServer,Oracle,SQLite和MySql,OleDb(目前未实现)数据库操作.以接口形式访问,易于切换
Ø 支持SQL语句访问,支持存储过程访问
Ø 可批量生成数据库表的Insert,Update,Delete和Select语句
n 日志组件
Ø 日志类型包括:登录日志,操作日志,Db表栏目值变更日志,异常日志,数据库操作(记录Insert,Update,Delete语句)
Ø 日志存储介质包括数据和Txt文本文件
n 消息组件
Ø 消息类型包括Email邮件,SMS短信,IM即时消息
Ø 基于Aspose.NetWork组件的邮件收发功能
Ø SMS服务,可发送文本消息和彩信(需与供应商自行联系)
Ø IM即时消息,纯数据库模式,未经过Socket(目前未实现)
n Office组件
Ø 数据导出.可导出至Excel,Word,CSV,Txt等
Ø 数据导入,支持从Excel,Txt等文件导入
Ø 对CSV,Excel,PDF,PDM(Power Designer),Txt,Word等文档的操作
Ø 文档预览.支持对常用文件的预览.包括:Excel,Word,Visio,PowerPoint,Flash,MP3音频文件,MP4视频文件,SQL,XML等代码文件
n 权限组件
Ø 包括三层结构:组织机构(又称部门),角色,用户
Ø 权限组件,仅提供查询三者之间的关系.如查找某角色下所有用户.某用户所拥有的角色列表
Ø 数据的增删改功能,在框架的其他功能模块中实现,不再此组件中提供
n 打印组件
Ø 内嵌基于Lodap组件打印,支持WebForm和WebMVC两种场景打印
Ø WinForm场景中
内嵌基于PrintDocument类的简单封装
对DataGridView控件的打印封装
n 报表组件
Ø 基于FastReport组件,目前支持WebForm和WinForm,两种应用场景
Ø 提供WinForm场景中,FastReport组件的设计器和示例Demo
Ø WebMVC场景中,可使用Lodap组件作为打印组件
n 资源文件组件
Ø 内嵌多语言解析,目前支持三种:英文,中文简体,中文繁体
Ø 提供资源文件设计器(仅支持运动WinForm页面)
n WebService组件
Ø 内置ADO.Net基本方法,如执行SQL语句,获取单行列数据,获取表数据等
Ø 内置文件下载功能,用于自动更新组件使用
2功能列表
2.1基础编码
2.1.1辅助编码
描述
l 左侧树控件,展示辅助编码类型.可以顶部工具栏新增,修改和删除.注:删除编码类型同时,编码本身同步删除
l 右侧顶部为检索区域,提供常用检索条件
l 右侧中间部分为工具栏,提供对辅助编码的增删改查.同时,右键Grid控件,会出现右键菜单,实现Grid控件打印
l Grid控件支持分页
2.1.2Db数据字典
描述
l 顶部提供数据库类型选择和连接字符串录入
l 选择好数据库类型和连接字符串,单击加载按钮,将数据库结构加载至左侧Db对象列表中.同时,选中行,右侧会展示相应的Db对象内容
l 提供数据字典导出功能,将右侧Db对象内容,导出至Excel文件
2.2开发平台
2.2.1功能系统
描述
l 顶部是数据检索区域,提供检索功能
l 中部是工具栏,用于实现功能系统的增删改
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.2.2功能模块
描述
l 顶部是数据检索区域,提供对功能模块的检索
l 中间部分是工具栏,提供对功能模块的增删改
n 打开方式
Execute:打开外部文件
Show:非模态打开,加载至框架
Showdialog:模态打开
Shownotinframe:非模态打开,不依赖于框架
n 访问权限
用户打开框架主页面时,左侧导航菜单,是根据权限配置.访问权限是此功能模块在功能权限中的标识符
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.2.3编码规则
描述
l 顶部是数据检索区域,提供对编码规则的检索
l 中间部分是工具栏,提供对功能模块的增删改
n 前缀类型:包括常量和变量.变量采用此实体类中,某属性值
n 年份格式:包括4位(2014)和2位(14)两种格式
n 月格式:包括月大写(1月份采用01)和月小写(1月份采用1,不补齐)
n 日格工:包括日大写(1号采用01) )和日小写(1号采用1,不补齐)
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.3系统管理
2.3.1系统选项
描述
l 顶部是数据检索区域,提供对系统选项的检索
l 中间部分是工具栏,提供对系统选项的增删改
n 若为系统初始选项,则不允许删除
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.3.2附件管理
描述
l 顶部是数据检索区域,提供对附件的检索
l 中间部分是工具栏,提供对附件的增删改
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
n 附件功能,更多的是在业务模块中,以单据附件的形式存在.如下图所示
n 文件支持预览功能.在上图的文件列表中,双击选中某行即可,如下图所示
Flash文件预览
Pdf文件预览
Sql文件预览
Word文件预览
2.3.3数据中心
描述
l 支持数据导入和导出.目前仅支持与Excel文件交互
l 顶部为选择数据库类型和连接字符串和选择导入导出文件
n 使用微软自带控件,实现数据库连接字符串录入
l 中间左侧是Db对象列表或Excel文件内容
l 中间右侧是Db表数据,用于生成SQL语句
2.3.4报表中心
描述
l 内置FastReport报件组件的设计器.注:已嵌入至框架中,不需额外打开
2.3.5消息中心
描述
l 提供收发Email功能功能.基于Aspose.NetWork组件
l 提供发送SMS短信功能(接口调用已完成,需与供应商自行索要帐户密码并充值)
2.4日志管理
2.4.1登录日志
描述
l 记录登录用户登入和登出时间,同时,还记录客户的IP地址和物理Mac地址
l 提供检索,并可将日志导出至Excel
2.4.2操作日志
描述
l 提供登录用户对功能模块的各种操作,包括操作结果和创建时间等
l 提供检索,并可将日志导出至Excel
2.4.3状态日志
描述
l 提供Db表栏目的值变更记录
l 提供检索,并可将日志导出至Excel
2.4.4数据库日志
描述
l 记录登录用户在UI页面操作数据库的SQL语句,包括Insert,Update,Delete语句
l 提供检索,并可将日志导出至Excel
2.4.5异常日志
描述
l 记录应用程序发生异常报错的日志,供开发员查找错误
l 提供检索,并可将日志导出至Excel
2.5权限管理
2.5.1组织机构
描述
l 顶部是数据检索区域,提供检索功能
l 中部是工具栏,用于实现功能系统的增删改
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
l 数据展示控件支持树状态结构
2.5.2角色
描述
l 顶部是数据检索区域,提供检索功能
l 中部是工具栏,用于实现功能系统的增删改
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.5.3用户
描述
l 顶部是数据检索区域,提供检索功能
l 中部是工具栏,用于实现功能系统的增删改
n 提供初始化密码功能.注:暂不支持多用户密码初始化
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.5.4用户角色
描述
l 维护用户和角色关系数据
l 选中左侧角色数据,右侧展示此角色下所拥有的用户列表
2.5.5用户组织机构
描述
l 维护用户和组织机构关系数据
l 选中左侧组织机构数据,右侧展示此组织机构下所拥有的用户列表
2.5.6功能权限
描述
l 顶部是数据检索区域,提供检索功能
l 中部是工具栏,用于实现功能系统的增删改
n 功能权限新增,支持批量新增操作
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.5.7控件权限
描述
l 顶部是数据检索区域,提供检索功能
l 中部是工具栏,用于实现功能系统的增删改
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.5.8数据权限
描述
l 数据权限,是指对数据进行权限过滤.可精确至实体类中某属性
l 顶部是数据检索区域,提供检索功能
l 中部是工具栏,用于实现功能系统的增删改
l 底部是数据展示区,支持分页功能.并可将数据导出至Excel
2.5.9角色功能权限
描述
l 维护角色和功能权限关系
l 选中左侧角色ID,右侧属于此角色中的功能权限,处于选中状态
2.5.10角色控件权限
描述
l 维护角色和控件权限关系
l 选中左侧角色ID,右侧属于此角色ID中的控件权限数据处于选中状态
2.5.11角色数据权限
描述
l 维护角色和控件权限关系
l 选中左侧角色ID,右侧属于此角色ID中的数据权限处于选中状态
2.6辅助工具
2.6.1资源管理器
描述
l 生成WinForm页面中控件的资源文件,包括英文,中文简体,中文繁体
l 生成成功后,数据存储至XML文件
2.6.2DLL查看器
l 查找DLL文件内容.注:仅支持对C#编译的DLL文件查看,并且是没有加密
2.6.3格式化对象
描述
l 支持格式化XML格式字符串
描述
l 格式JSON格式字符串,生成JSON对象,如下图所示
2.6.4格式化字符串
描述
l 格式化字符串,即将SQL语句,生成C#字符串,如上图所示
3解决方案
3.1QH.Core项目
描述
l 整个框架核心类库
n 各种常用操作帮助类.如DateTime,DataTable,Xml,File等
n 框架各基础操作.如DateTimeFormat格式字符串
n Db表实体类,根据领域驱动原则,包括实体类和扩展实体类
n 各组件接口和实现工厂
l UI控件接口和常用UI控件操作基类
3.2QH.Utility项目集
描述
l 此项目集用于对各项技术封装,如MongoDb,Memcached等.封装后,再交由Component层使用
n ComProvider项目,用于加载COM组件,框架所有COM组件均加载至此处,再交由其他项目引用
n EF6项目,是对微软的EntiryFramework框架的封装
n FlexPaper项目,用于WebForm中在线预览功能.此项目是将各种文档,全部转至swf文件,供WebForm项目使用
n Memcached项目,是对第三方缓存控件的封装
n Office项目,是对Office文档及其他常文档的操作.如:CSV,TXT,Word,Excel,PDF等
3.3QH.Component.Log项目
描述
l BoogLoger是应用系统加载时,创建各种组件时,记录组件是否创建成功,输出至Txt文本文档
l LogService是日志组件接口的实现类
3.4QH.Component.Message项目
描述
l MessageService是消息组件接口实现类
l FormSendEMailBill,发送邮件单据页面
l FormSendIMBill,发送即时消息单据页面
l FormSendSMSBill,发送短信单据页面
l EMailHelper,邮件操作常用方法,以静态方法实现
3.5QH.Component.Permission项目
描述
l PermissionService是权限组件接口实现类
3.6QH.Control.WebForm项目
描述
l PageBase是WebForm页面的基类,内置各种常用操作.如获取地址参数值,常用组件封装等
l Helper文件夹,封装各种常用操作,发静态方法实现
3.7QH.Control.WebForm.MVC3项目
描述
l 基于MVC3项目的常用封装
3.8QH.Control.WinForm项目
描述
l 基于WinForm项目的常用封装
l Control文件夹,存储各种控件
n 部分控件取自网络,有涉及到版权,请与我联系!
3.9QH.Control.WinForm.Assist项目
描述
l 基于WinForm项目的常用页面封装
n AssistToolForm文件夹,存储辅助工具常用页面
n ManagePlatForm文件夹,存储开发平台常用页面
n PermissionForm文件夹,存储权限中心常用页面
n UserForm文件夹,存储自定义页面.如主框架左侧导航菜单页面,导入导出通用页面,数据中心页面等
n WorkflowForm文件夹,存储工作流组件常用页面
3.10QH.Kernel项目集
描述
l EF6Models项目,存储EF6生成的Db表实体类
l EF6DAL项目,存储EF6与数据库交互的操作类,及所有Db表的所有类
l EF6Service项目,为业务层,被UI页面调用
l EF6WebUI和EF6WinUI项目,存储UI页面,
4源码解析
解析1
Service层代码
解析2
表单数据加载
解析3
表单数据保存
5FAQ
1. COM组件引用
项目引用若干COM组件,包括PDF文档预览组件,Office文档预览组件,视频播放组件.框架本身已提供安装程序在\packages\Tools\文件夹中(暴风影音安装程序未提供)
Navi.Soft20.WinForm操作手册