CS开发框架核心模型 - 动态加载模块
CS开发框架核心模型 - 动态加载模块
C/S开发框架核心功能之一:
动态加载模块, 所有业务模块完全独立的,框架动态加载而不是静态引用。
模型图如下:
模型图如下:
模块加载器(ModuleLoader)
ModuleLoader是开发框架的一个类,用于动态加载用户设计的业务模块。
模块加载器支持两种方式:
1. 枚举应用程序目录下所有CSFramework*.DLL文件,将功能集成到主窗体。
2. 根据业务模块配置表(sys_ModuleFiles),动态加载DLL,将功能集成到主窗体。

C# Code:
/// <summary>
/// 加载模块方法
/// </summary>
/// <param name="msg">加载进度</param>
/// <param name="moduleMenus">模块的菜单</param>
public void LoadModules(IMsg msg, MenuStrip moduleMenus, string searchPattern = "")
{
//加载Dev组件
ModuleLoadDevComponent loader = new ModuleLoadDevComponent();
//****************************************************************
//开发框架提供两个方案加载业务模块:
//
//1.从帐套库的sys_ModuleFileList表获取模块文件清单表
//2.枚举程序目录下所有DLL文件
//****************************************************************
if (SystemSettings.Current.ModuleLoadType == ModuleLoadType.ByModuleFileTable)
{
//1.从帐套库的sys_ModuleFileList表获取模块文件清单表
DataTable fileList = CommonData.GetDataDict(sys_ModuleFileList.__TableName);
_Modules = loader.GetModuleList(fileList);//从运行目录中搜索模块文件
}
if (SystemSettings.Current.ModuleLoadType == ModuleLoadType.SearchAppDir)
{
if (String.IsNullOrWhiteSpace(searchPattern)) searchPattern = Globals.DEF_SYS_MODULE;
//2.枚举程序目录下所有DLL文件
_Modules = loader.GetModuleList(searchPattern);
}
if (_Modules == null) throw new CustomException("获取模块清单文件失败!");
//省略代码
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
/// 加载模块方法
/// </summary>
/// <param name="msg">加载进度</param>
/// <param name="moduleMenus">模块的菜单</param>
public void LoadModules(IMsg msg, MenuStrip moduleMenus, string searchPattern = "")
{
//加载Dev组件
ModuleLoadDevComponent loader = new ModuleLoadDevComponent();
//****************************************************************
//开发框架提供两个方案加载业务模块:
//
//1.从帐套库的sys_ModuleFileList表获取模块文件清单表
//2.枚举程序目录下所有DLL文件
//****************************************************************
if (SystemSettings.Current.ModuleLoadType == ModuleLoadType.ByModuleFileTable)
{
//1.从帐套库的sys_ModuleFileList表获取模块文件清单表
DataTable fileList = CommonData.GetDataDict(sys_ModuleFileList.__TableName);
_Modules = loader.GetModuleList(fileList);//从运行目录中搜索模块文件
}
if (SystemSettings.Current.ModuleLoadType == ModuleLoadType.SearchAppDir)
{
if (String.IsNullOrWhiteSpace(searchPattern)) searchPattern = Globals.DEF_SYS_MODULE;
//2.枚举程序目录下所有DLL文件
_Modules = loader.GetModuleList(searchPattern);
}
if (_Modules == null) throw new CustomException("获取模块清单文件失败!");
//省略代码
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761

参考文档:
CS开发框架动态加载模块技术
CSFrameworkV6 | MES项目过站插件开发教程|C/S开发框架
软件开发框架培训实时讲解总结|CSFrameworkV5.1旗舰版|培训大纲
CSFramework开发框架主窗体模块容器主界面介绍
CSFramework.EF.PostgreSql数据库组件 PostgreSql数据库测试报告|C/S开发框架
CSFrameworkV6快速开发框架 | 使用PostgreSql 数据库测试报告|C/S开发框架
CSFramework WebApi开发框架集成PostgreSql数据库及测试报告|C/S开发框架
CSFrameworkV6旗舰版开发框架 | 集成软件授权认证系统|C/S开发框架
CS软件授权注册系统|WebApi服务器介绍|C/S开发框架
CSFrameworkV6旗舰版|新功能|在线用户查询、设置用户下线|C/S开发框架
CSFramework.Authentication 软件授权证书管理系统|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
CSFramework.Authentication 软件授权证书管理系统|C/S开发框架
CSFrameworkV6旗舰版开发框架 | 集成软件授权认证系统|C/S开发框架
CS开发框架动态加载模块技术
CSFrameworkV6 | MES项目过站插件开发教程|C/S开发框架
软件开发框架培训实时讲解总结|CSFrameworkV5.1旗舰版|培训大纲
CSFramework开发框架主窗体模块容器主界面介绍
CSFramework.EF.PostgreSql数据库组件 PostgreSql数据库测试报告|C/S开发框架
CSFrameworkV6快速开发框架 | 使用PostgreSql 数据库测试报告|C/S开发框架
CSFramework WebApi开发框架集成PostgreSql数据库及测试报告|C/S开发框架
CSFrameworkV6旗舰版开发框架 | 集成软件授权认证系统|C/S开发框架
CS软件授权注册系统|WebApi服务器介绍|C/S开发框架
CSFrameworkV6旗舰版|新功能|在线用户查询、设置用户下线|C/S开发框架
CSFramework.Authentication 软件授权证书管理系统|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
CSFramework.Authentication 软件授权证书管理系统|C/S开发框架
CSFrameworkV6旗舰版开发框架 | 集成软件授权认证系统|C/S开发框架
其它资料:
什么是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内容管理系统 |
什么是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内容管理系统 |
在线客服
