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.
66 lines
2.6 KiB
66 lines
2.6 KiB
2 weeks ago
|
# 修改记录
|
||
|
|
||
|
## 2024年修改记录
|
||
|
|
||
|
### CellularNetworkService.StartNetworkAsync 方法添加协议客户端配置创建
|
||
|
|
||
|
**修改时间**: 2024年
|
||
|
**修改文件**:
|
||
|
- `CoreAgent.Infrastructure/Services/Network/CellularNetworkService.cs`
|
||
|
|
||
|
**修改内容**:
|
||
|
|
||
|
1. **添加第5.5步协议客户端配置创建**
|
||
|
- 在 `StartNetworkAsync` 方法的第5步(更新IP端点管理器)之后添加第5.5步
|
||
|
- 直接创建 `ProtocolClientConfigFactory` 实例
|
||
|
- 调用 `CreateFromEntities()` 方法创建协议客户端配置
|
||
|
- 添加配置创建成功/失败的日志记录
|
||
|
- **错误处理**:配置创建失败时立即返回失败结果,不继续执行后续步骤
|
||
|
- **优化执行顺序**:将协议客户端配置创建提前到网络启动之前,确保数据可用性和错误隔离
|
||
|
|
||
|
2. **修复Logger类型问题**
|
||
|
- 添加 `ILoggerFactory` 依赖注入到构造函数
|
||
|
- 使用 `_loggerFactory.CreateLogger<ProtocolClientConfigFactory>()` 创建正确类型的Logger
|
||
|
- 确保 `ProtocolClientConfigFactory` 获得正确的Logger实例
|
||
|
|
||
|
3. **具体实现**:
|
||
|
```csharp
|
||
|
// 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("协议客户端配置创建失败");
|
||
|
}
|
||
|
```
|
||
|
|
||
|
4. **添加必要的依赖注入**
|
||
|
- 添加 `ILoggerFactory loggerFactory` 参数到构造函数
|
||
|
- 添加 `using CoreAgent.Infrastructure.Services.Network;` 以支持 `ProtocolClientConfigFactory`
|
||
|
|
||
|
5. **设计优势**:
|
||
|
- 在IP端点信息准备完成后立即创建协议客户端配置
|
||
|
- 不依赖网络启动结果,确保配置创建的独立性
|
||
|
- 不依赖依赖注入,直接实例化使用
|
||
|
- 提供详细的日志记录便于调试
|
||
|
- 保持代码的简洁性和可维护性
|
||
|
- 正确处理Logger类型,避免类型不匹配问题
|
||
|
- 优化执行顺序,提高错误隔离能力
|
||
|
- 完善的错误处理机制,确保配置创建失败时及时停止
|
||
|
|
||
|
**影响范围**:
|
||
|
- 蜂窝网络启动流程
|
||
|
- 协议客户端配置管理
|
||
|
- 网络状态监控
|
||
|
- 依赖注入配置(需要更新服务注册)
|
||
|
|
||
|
### LogLayerHelp类名规范化
|
||
|
|
||
|
**修改时间**: 2024年
|
||
|
**修改文件**:
|
||
|
- `
|