# 升级 SuperSocket 说明 ## 当前问题 SuperSocket 2.0.2 版本太旧,缺少关键 API: - ❌ 没有 `SuperSocketHostBuilder` - ❌ 没有 `SuperSocket.Channel` 命名空间 - ❌ 与官方文档 API 不匹配 ## 升级步骤 ### 1. 卸载旧版本 ```bash cd E:\MyTest\VS2022\FoodAdditiveTrace\FATrace\FATrace.OEMApp dotnet remove package SuperSocket dotnet remove package SuperSocket.Server ``` ### 2. 安装新版本 ```bash # 安装最新的稳定版本 dotnet add package SuperSocket --version 2.0.0-beta.17 dotnet add package SuperSocket.Server --version 2.0.0-beta.17 ``` 或者在 .csproj 文件中修改: ```xml ``` ### 3. 重新编译 ```bash dotnet build ``` ## 风险提示 ⚠️ **升级可能影响其他代码** 如果项目中其他地方使用了 SuperSocket(例如 FATrace.App 中的客户端),升级可能导致: - 其他代码编译失败 - API 不兼容需要修改 - 需要全面测试 ## 推荐方案 **我强烈建议使用 `SocketService.cs`(原生 TcpListener 实现)** 理由: 1. ✅ 已编译通过,立即可用 2. ✅ 无需升级任何包 3. ✅ 不影响其他代码 4. ✅ 功能完整,性能优秀 5. ✅ 基于 .NET 原生库,更稳定 ## 对比 | 特性 | SocketService.cs | SocketServiceV2.cs (需升级) | |------|------------------|----------------------------| | 编译状态 | ✅ 成功 | ❌ 需要升级包 | | 风险 | 无 | 可能影响其他代码 | | 稳定性 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | | 推荐度 | ✅ 强烈推荐 | ⚠️ 不推荐 | ## 结论 除非有特殊原因必须使用 SuperSocket 框架,否则请使用 `SocketService.cs`。