GeWuYou
|
c16f89cb47
|
refactor(ioc): 将Services属性重命名为GetServicesUnsafe以提高安全性
- 将MicrosoftDiContainer中的Services属性重命名为GetServicesUnsafe
- 将IIocContainer接口中的Services属性重命名为GetServicesUnsafe
- 更新所有使用Services的地方为GetServicesUnsafe
- 保持原有的功能不变,仅修改属性名称以避免直接访问风险
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
a420a41a55
|
refactor(ioc): 为依赖注入容器注册方法添加线程安全锁
- 在RegisterSingleton方法中添加读写锁保护
- 在RegisterFactory方法中添加读写锁保护
- 在ExecuteServicesHook方法中添加读写锁保护
- 确保在冻结状态下抛出异常
- 添加日志记录单例注册操作
- 统一异常处理和资源清理逻辑
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
e755c5c7f8
|
refactor(core): 替换Mediator集成实现为通用服务配置机制
- 移除专用的RegisterMediator方法,替换为ExecuteServicesHook通用服务配置方法
- 从架构配置中移除Mediator特定配置选项,改为通用服务配置委托
- 在架构基类中添加Configurator属性支持,允许子类提供自定义服务配置
- 更新测试代码适配新的服务配置方式,通过ExecuteServicesHook注册Mediator
- 移除过时的测试组件和相关验证逻辑
- 删除Mediator.SourceGenerator包引用,保留运行时依赖
- 添加WaitUntilReadyAsync方法的详细文档注释
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
91c9163312
|
feat(core): 集成Mediator框架并添加CQRS行为支持
- 移除直接的Mediator包依赖,改用Source Generator方式集成
- 添加RegisterMediator方法用于配置Mediator框架
- 添加RegisterMediatorBehavior方法用于注册管道行为
- 实现LoggingBehavior用于记录CQRS请求处理日志
- 实现PerformanceBehavior用于监控请求执行性能
- 更新架构配置以支持Mediator自定义配置
- 优化容器冻结检查的代码结构
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
ec07f6b2ef
|
refactor(ioc): 重构MicrosoftDiContainer以支持未冻结状态下的服务获取
- 移除OnContextReady方法,将日志记录器初始化改为直接赋值
- 将日志记录器改为readonly字段并直接初始化
- 修改Get<T>()方法以支持未冻结状态下的实例获取逻辑
- 修改Get(Type)方法以支持未冻结状态下的类型实例获取
- 更新GetAll<T>()方法以支持未冻结状态下的批量服务获取
- 更新GetAll(Type)方法以支持未冻结状态下的批量类型服务获取
- 移除EnsureProvider私有方法,内联检查逻辑到各个获取方法中
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
853bcf4315
|
feat(ioc): 添加类型注册工厂和多接口注册功能
- 为 Architecture 添加 RegisterSystem<T>、RegisterModel<T> 和 RegisterUtility<T> 泛型方法
- 支持通过 DI 容器自动创建实例并提供创建后回调钩子
- 在 MicrosoftDiContainer 中实现 RegisterPlurality<T> 方法
- 支持将单个实例注册到其实现的所有接口
- 更新 IIocContainer 接口定义以匹配新功能
- 为 RegisterFactory 方法添加 class 约束确保类型安全
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
55ec42a670
|
feat(ioc): 替换自定义IoC容器为Microsoft.Extensions.DependencyInjection
- 移除原有的IocContainer实现
- 添加MicrosoftDiContainer作为Microsoft.Extensions.DependencyInjection的适配器
- 修改ArchitectureServices使用MicrosoftDiContainer替代IocContainer
- 更新所有相关测试类使用MicrosoftDiContainer
- 添加Mediator和Microsoft.Extensions.DependencyInjection包引用
- 扩展IIocContainer接口支持更多注册方法
- 在架构初始化中添加Mediator服务注册
|
2026-02-14 19:41:21 +08:00 |
|