批量转换服务: - BatchConversionService: 批量转换服务实现 - ConvertDirectoryAsync: 目录转换(递归所有子目录) - ConvertFilesAsync: 多文件批量转换 - 保持原始目录结构 - 自动生成批量报告 CLI 工具增强: - --batch/-b: 启用批量转换模式 - --recursive/-r: 递归处理子目录 - --verbose: 显示详细信息 - convert 命令自动检测目录/文件模式 批量转换结果: - BatchConversionResult: 批量转换结果 - ConvertedFileInfo: 成功文件详情 - FailedFileInfo: 失败文件详情 - 统计:总数/成功/失败/耗时 测试覆盖: - ConvertDirectoryAsync_ValidDirectory: 目录转换测试 - ConvertFilesAsync_MultipleFiles: 多文件测试 总计:40 个测试全部通过 ✅ 使用示例: # 转换整个目录 dotnet run --project CodePlay.CLI -- convert -s CSharp -t Java -i ./src -o ./output-java -b # 递归转换(默认) dotnet run --project CodePlay.CLI -- convert -s CSharp -t Java -i ./src -b -r true # 详细输出 dotnet run --project CodePlay.CLI -- convert -s CSharp -t Java -i ./src -b --verbose Co-authored-by: monkeycode-ai <[email protected]>
Task 4.3 - Blazor 前端界面: - 创建 CodePlay.WebUI Blazor Server 项目 - 实现 Converter.razor 代码转换页面 - 提供代码输入、语言选择、转换按钮 - 显示转换结果、TODO 列表和问题列表 - 更新导航菜单 - 注册 ConversionService 服务 Task 5.1 - CLI 命令行工具: - 集成 System.CommandLine 库 - 实现 convert 命令(代码转换) - 实现 list 命令(列出支持的转换) - 实现 check 命令(检查是否支持) - 支持 -s/-t 指定源/目标语言 - 支持 -i/-o 指定输入/输出文件 - 支持 -v 指定验证轮次 - 支持 -c 指定配置文件 测试: - CLI help 命令: ✅ - CLI list 命令: ✅ - CLI convert 命令: ✅ (成功转换 C# 到 Java) Co-authored-by: monkeycode-ai <[email protected]>
- 创建 CodePlay 解决方案和 4 个项目 (Core, Web, CLI, Tests) - 实现核心数据模型 (ConversionRequest, ConversionResult, Project 等) - 实现核心接口 (IParser, IConverter, ICodeGenerator 等) - 实现基础抽象类 BaseParser - 实现 CSharpParser 解析器 (基于 Roslyn) - 添加 Microsoft.CodeAnalysis.CSharp NuGet 包 - 所有代码编译通过 Co-authored-by: monkeycode-ai <[email protected]>