# Kernelx.Components **Repository Path**: melx-or/kernelx ## Basic Information - **Project Name**: Kernelx.Components - **Description**: 基于IServiceProvider与IServiceCollection封装IStartupWorkloadContext上下文,实现高内聚低耦合的业务操作框架 - **Primary Language**: C# - **License**: LGPL-2.1 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2023-10-31 - **Last Updated**: 2025-11-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: 高内聚, 低耦合 ## README ## 封装业务逻辑执行操作的服务模型组件及基础框架 ### 介绍 _基于一个请求操作对应一个业务逻辑执行模型设计的高内聚低耦合的服务模型库_ #### 框架使用示例 - **常见的增删改查操作继承及实现,例如:** - 仅关注查询参数的定义即可复用内置的查询服务模型 - ![仅关注查询参数的定义即可复用内置的查询服务模型](samples/samples003.png) - **AspNetCore应用层的简洁调用,例如:** - 仅关注查询参数的定义即可复用内置的查询服务模型 - !![仅关注查询参数的定义即可复用内置的查询服务模型](samples/samples004.png) #### 框架使用的初始化操作 - **AspNetCore(应用层环境)** - 集中且友好的注册方式,已实现EFCore和FreeSql的数据访问框架的整合,示例默认使用FreeSql+Sqlite - ![集中且友好的注册方式](samples/samples001.png) - ![简洁明了的use代码](samples/samples002.png) ### 组件及框架简述 - **Kernelx.Standardization.Contexts(基础框架的核心)** 扩展NET的IServiceProvider接口,封装一个全局的StartupWorkloadContext访问对象 及IStartupWorkloadContext接口 - **Kernelx.Standardization.MOI(基础框架的实体模型库访问操作接口)** 参照EFCore的数据访问框架设计的通用接口IModelibContext,默认实现了EFCore和FreeSql的对接,后续可增加其他框架的对接实现 - **Kernelx.FrameworkCore(业务逻辑执行操作的服务模型核心库)** 服务模型基类将实例化过程分为初始化和业务逻辑执行俩个阶段,利用IStartupWorkloadContext接口和IModelibContext接口屏蔽掉应用层的执行环境和数据访问框架的具体选择.专注于业务逻辑的编码设计.默认实现了常见的增删改查操作的泛型基类 - **Kernelx.AspNetCoreContexts** - 针对AspNetCore的应用层环境,实现了IStartupWorkloadContext和IRequestParameter接口 - **Kernelx.ClientContexts** - 针对客户端环境,实现IStartupWorkloadContext和IRequestParameter接口 **本核心库的引用可以与原有项目的业务代码共存,改动成本很低,尤其是AspNetCore + EFCore的环境**