软件开发框架培训实时讲解总结|CSFrameworkV5.1旗舰版|培训大纲
软件开发框架培训实时讲解总结-CSFrameworkV5.1旗舰版 客户:宁德时代 目录
扁平按钮,UI界面Cursor=Hand ButtonStyle=HotFlat ImageOptions.Image=DevExpress图标 关于模块的主图标,必须是透明背景32bit,png/ico格式 开发环境配置 – VS开发环境对应的DevExpress版本VS2015, 安装DevExpress 15.x VS2017, 安装DevExpress 17.x VS2019, 安装DevExpress 19.x DevExpress组件历史版本https://www.devexpress.com/Support/Versions.xml 开发框架子系统ClientFoundation开发架构配置附加2个数据库: CSFrameworkV5_System(系统库) CSFrameworkV5_Normal(账套库) 配置系统库的 tb_Dataset 表,核对 DBUser,DBPassword字段的内容,密码使用DemoTester.exe工具加密。 SqlConnector.exe 连接配置系统库操作手册:https://www.cscode.net/archive/csframework-sqlconnector/1631288677.html CodeGenerator.exe 代码生成器-连接配置操作手册:https://www.cscode.net/archive/csframework-sqlconnector/1631288677.html AutoUpgrader.exe 自动升级程序,配置连接操作手册:https://www.cscode.net/archive/autoupgrader/1630589770.html 日志管理操作日志:系统登陆日志,系统操作日志, Log.LogDB(), Log.LogLocal()。 数据日志: 需要配置写日志的列,配置重要列,比如:名称,数值类,用于记录旧值、新值、修改人,时间等信息。 功能入口:系统管理模块【日志配置】 明细表记录的排序算法明细表要增加一个排序字段,如:Queue,类型:decimal(18,4) 插入记录的算法:(Current-Prior)/2+Current 查询排序:Order By Queue ASC 开发框架加解密算法开发框架使用Rijdenal对称加密算法, 传统加密DES/AES:DES加密太简单,容易破解。 RSA加密256位,签名算法,特点:需要分发公钥+私钥,算法速度慢。 加解密工具的密码:key(8位)+iv(8位)偏移量。 vs改名工具 CSFramework.Renamehttps://www.csframework.com/archive/1/arc-1-20201110-2927.htm 最新版本请联系作者。 集团数据权限控制横向理论
纵向理论
SqlCommandGenerator - SQL命令生成器生成SQL原理, SqlCommandGenerator,生成3种SQL脚本及DbCommand实例。 实现逻辑:通过.NET反射ORM类的属性,根据属性定义,动态生成三种sql脚本。 ORM模型/ Model 重点部分主表配置主键C# 全选
明细表配置主键和外键C# 全选
代码生成器,配置明细表重点明细表必须配置主键+外键。 主从子表,三层表,层级表参考:库存模块的《生产工艺》。代码生成器仅支持生成1层明细,既:主、从表。 提交多表时(DataSet)怎样数据采集?什么是数据采集? 就是保存数据前将界面的数据组合到一个DataSet。 保存数据流程:UI数据采集 --> 调用BLL.Update(Dataset) --> DAL.Update(dataset) --> Database 提交数据重点:DAL.CreateSqlGenerator方法要对应ORM模型,根据表名对应,实现自动提交数据。 窗体、类命名规范(按功能名称排序)比如:PO\SO 开发框架命名规范.pdf下载: https://www.csframework.com/archive/1/arc-1-20130825-2063.htm 关于流水号码自动生成
每个DAL层必须重写CreateSqlGenerator方法单张表的DAL层,比如客户资料、产品资料: C# 全选
多张表的DAL层,采购订单、生产单: C# 全选
CSFramework.DB.dll (数据库底层接口组件)介绍:IDatabase 里面有4个meta_XXX接口,用于查询数据库元数据的接口。 代码生成器,生成SQL脚本要支持MySQL, 改@参数符号。 代码生成器,生成WCF接口到单独文件。 代码生成器,加选项:界面组件自适应。 开发文档:https://www.cscode.net/archive/csframework.db/1630589248.html DbDataUpdate组件(已废弃,请使用DbFramework)C/S框架网官网搜索文档,用于轻量级数据操作界面,Add/Edit/Delete对象实体操作。 参考:https://www.csframework.com/archive/1/arc-1-20210611-3587.htm 通过代码生成器生成标准的实体类模型,可用于DbDataUpdate组件操作。 DbFramework组件参考文档:https://www.csframework.com/archive/1/arc-1-20210726-3732.htm frmBaseXXX基类窗体里面重要的方法
框架基类界面1. frmBase 窗体基类
2. frmBaseModule 模块主窗体
特点:继承frmBaseModule 基类的窗体,作为业务模块的主窗体。 3. frmBaseDataDictionary 单表数据窗体
4. frmBaseBusiness 主从表数据窗体
5. frmBaseDialog 对话框窗体6. frmMsgEx:自定义UI消息窗体。C# 全选
文本输入框命名规则文本框:txt+字段名 勾选框:chk+字段名 文本框赋值:SetEditorBindingValue(txt字段名,true); 文本输入框赋值方式赋值差异: C# 全选
CSFrameworkV5.DataAccess 数据访问层几个重要的方法
动态加载模块动态加载模块,怎样区分业务模块?
动态加载dll流程在debug目录查询CSFramework*.dll 查找AssemblyModuleEntry特性,满足这两个条件,自动加载该dll文件。 动态加载模块技术:.NET反射,.NET Reflecation。 参考:frmMain.InitUserInterface方法,LoadModules方法 账套管理与维护系统库 tb_DataSet 表, IsVisible=Y, 登陆界面可选择账套。 DBUserPassword 对称加密, Rijndael , DES, DemoTester.exe加密。 常量改名注意事项1.升级程序 Program.cs 文件内的常量改名 2.主程序 Globals.cs,替换:CSFramework,替换为您的项目名称,如:YourERP。 代码生成器 CodeGenerator生成主从表界面注意事项配置主表ORM 配置明细ORM 新开发的界面如何给用户分配权限
单表:AuthorityCategory.MASTER_ACTION ---- 核对菜单打开的界面必须继承frmBaseDatadict界面 主从表:AuthorityCategory.BUSINESS_ACTION_VALUE –>打开的界面必须继承frmBaseBusiness界面 报表:AuthorityCategory.REPORT_ACTION_VALUE 扩展权限:AuthorityCategory.MASTER_ACTION + ButtonAuthority.EX_01 扩展按钮官网搜索关键词“扩展权限”。 扩展窗体中自定义按钮 http://www.csframework.com/archive/1/arc-1-20210722-3729.htm 扩展通用权限按钮(Toolbar中的按钮) http://www.csframework.com/archive/5/arc-5-20110510-1465.htm http://www.csframework.com/archive/1/arc-1-20161023-2266.htm 隐藏按钮: InitButtons方法的最后面加代码_buttons.GetButtonByName("btnPrint").Visible = false; WCF开发WCF有三种承载(宿主,Hosting)方式,IIS, Win服务, SelfHosting自承载 IIS或自承载用于开发调试。 IIS承载(适用http/https协议)配置web.config三个结点: bingings, services, behaviors SQL连接字符串加密Globals.asax文件的代码位置:App_Code\web_app.cs文件, 初始化Rij加密器。 关于协议与WCF结点绑定HTTP/HTTPS协议:wsHttpBinding, basicHttpBinding Net.tcp协议:nettcpBinding WCF开发相关文档Self Hosting自承载(适用http协议,开发环境调试)https://www.csframework.com/archive/1/arc-1-20200217-2722.htm Windows服务承载(适用http/https协议,生产环境)http://www.csframework.com/archive/1/arc-1-20200212-2703.htm WCF开发框架 - 采用wsHttpBinding及basicHttpBinding连接https协议的WCF服务http://www.csframework.com/archive/1/arc-1-20210709-3707.htm WCF快速开发框架 - IIS承载WCF服务wsHttpBindings配置详解(HTTP协议)http://www.csframework.com/archive/1/arc-1-20210709-3705.htm WCF快速开发框架 - IIS承载WCF http协议BasicTcpBinding配置详解http://www.csframework.com/archive/1/arc-1-20210709-3704.htm WCF快速开发框架 - IIS承载WCF net.tcp协议NetTcpBinding配置详解http://www.csframework.com/archive/1/arc-1-20210709-3701.htm WCF开发框架 - vs发布IIS承载(IIS Hosting)的WCF应用服务详解http://www.csframework.com/archive/1/arc-1-20210709-3703.htm WCF开发框架 - BasicHttpBinding绑定的web.config与C#代码配置(支持https协议)http://www.csframework.com/archive/1/arc-1-20210708-3696.htm WCF开发框架 - NetTcpBinding配置web.config与C#代码配置http://www.csframework.com/archive/1/arc-1-20210708-3695.htm WCF开发框架之WSHttpBinding参数配置(C#代码配置+App.Config两种方案)http://www.csframework.com/archive/1/arc-1-20210707-3691.htm WCF开发框架IIS承载WCF - Website站点承载改为ASP.NET网站应用程序承载http://www.csframework.com/archive/1/arc-1-20210707-3693.htm WCF开发框架之ICommunicationObject 对象详解http://www.csframework.com/archive/1/arc-1-20210707-3690.htm 关于数据处理超时解决方案若是WCF服务器,在Globals.cs1.DatabaseFactory.CommandTimeOut = 10;//单位:秒,设置DbCommand命令执行超时; 若是直连模式BridgeFactory.InitializeBridge() 扫一扫加作者微信
参考文档:
软件开发框架的设计和选择 基于C/S结构的开发平台|Winform开发框架研发的生产管理软件 快速软件开发框架|C/S框架网钜献 基于C#.NET C/S架构的生产看板管理系统软件开发框架平台 基于C#.NET MES软件开发工具MES系统开发框架 .NET快速开发框架 - 常见快速软件开发平台和开发工具 【原创】进销存软件开发模板基于C/S架构快速开发框架C#+Winform+DevExpress C# Winform软件快速开发框架|软件开发平台 - 界面多语言实现原理 多语言界面软件开发框架 - 初始化多语言时发生单引号错误(解决方案) C/S架构多语言界面UI框架软件开发框架(C#.NET+Winform+DEV+SQL) 基于C/S架构轻量级快速开发框架软件开发平台(C#+ADO.NET+EF) 软件开发框架 - Software Development Framework 软件开发平台 - 软件开发框架介绍-C/S开发框架 图解软件开发-项目管理基础-C/S开发框架 软件开发框架培训内容大全 | CSFrameworkV5.1旗舰版|培训大纲
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |