You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.6 KiB
2.6 KiB
修改记录
2024年修改记录
CellularNetworkService.StartNetworkAsync 方法添加协议客户端配置创建
修改时间: 2024年 修改文件:
CoreAgent.Infrastructure/Services/Network/CellularNetworkService.cs
修改内容:
-
添加第5.5步协议客户端配置创建
- 在
StartNetworkAsync
方法的第5步(更新IP端点管理器)之后添加第5.5步 - 直接创建
ProtocolClientConfigFactory
实例 - 调用
CreateFromEntities()
方法创建协议客户端配置 - 添加配置创建成功/失败的日志记录
- 错误处理:配置创建失败时立即返回失败结果,不继续执行后续步骤
- 优化执行顺序:将协议客户端配置创建提前到网络启动之前,确保数据可用性和错误隔离
- 在
-
修复Logger类型问题
- 添加
ILoggerFactory
依赖注入到构造函数 - 使用
_loggerFactory.CreateLogger<ProtocolClientConfigFactory>()
创建正确类型的Logger - 确保
ProtocolClientConfigFactory
获得正确的Logger实例
- 添加
-
具体实现:
// 5.5. 创建协议客户端配置 var protocolConfigFactory = new ProtocolClientConfigFactory(_loggerFactory.CreateLogger<ProtocolClientConfigFactory>(), _context); var configCreated = protocolConfigFactory.CreateFromEntities(); if (configCreated) { _logger.LogInformation("协议客户端配置创建成功,共创建 {ConfigCount} 个配置", protocolConfigFactory.ConfigCount); } else { _logger.LogWarning("协议客户端配置创建失败"); return CellularNetworkOperationResult.Failure("协议客户端配置创建失败"); }
-
添加必要的依赖注入
- 添加
ILoggerFactory loggerFactory
参数到构造函数 - 添加
using CoreAgent.Infrastructure.Services.Network;
以支持ProtocolClientConfigFactory
- 添加
-
设计优势:
- 在IP端点信息准备完成后立即创建协议客户端配置
- 不依赖网络启动结果,确保配置创建的独立性
- 不依赖依赖注入,直接实例化使用
- 提供详细的日志记录便于调试
- 保持代码的简洁性和可维护性
- 正确处理Logger类型,避免类型不匹配问题
- 优化执行顺序,提高错误隔离能力
- 完善的错误处理机制,确保配置创建失败时及时停止
影响范围:
- 蜂窝网络启动流程
- 协议客户端配置管理
- 网络状态监控
- 依赖注入配置(需要更新服务注册)
LogLayerHelp类名规范化
修改时间: 2024年 修改文件:
- `