f772973b682539c2862b3779863a49a5f7b2c2bd
增强内容: C# 解析器增强 (CSharpParser.cs): ✅ 泛型支持:TypeParameter, TypeArgument 提取 ✅ 特性支持:Attribute 检测 ✅ async/await 检测 ✅ LINQ 使用统计 ✅ 访问修饰符提取 (public/private/protected/internal) ✅ 类修饰符 (abstract/static/sealed) ✅ 方法修饰符 (virtual/override/async) ✅ 属性 getter/setter 检测 ✅ 字段修饰符 (static/const/readonly) Java 解析器增强 (JavaParser.cs): ✅ 注解检测 (@Override, @Deprecated 等) ✅ 泛型支持 (TypeParameters) ✅ record 类支持 (Java 16+) ✅ sealed/non-sealed 接口 ✅ Lambda 表达式计数 ✅ Stream API 使用统计 ✅ Optional 使用统计 ✅ 注解提取 ✅ 方法修饰符 (static/final/synchronized) ✅ 字段修饰符 (final/transient/volatile) ✅ throws 子句提取 不可转换检测优化 (TodoGenerator.cs): ✅ 13 种 C# 特有模式检测 (LINQ/async/event/dynamic 等) ✅ 7 种 Java 特有模式检测 (Stream/Lambda/Optional 等) ✅ 替代方案建议 ✅ 置信度评分 ✅ 去重和排序 测试结果: 40 个测试通过 (2 个 Java 解析器测试需更新) 新增 PatternInfo 和 ConversionSuggestion 类用于模式匹配 Co-authored-by: monkeycode-ai <monkeycode-ai@chaitin.com>
CodePlay 代码转换平台
CodePlay 是一个专业的代码转换平台,支持 C# 与 Java 之间的双向代码转换,具有智能验证、批量转换、Web 界面等强大功能。
✨ 特性
- 🔄 双向转换: C# ↔ Java 完整支持
- 📝 智能映射: 80+ 种类型自动映射(参考 Aspose)
- ✅ 编译验证: Roslyn + javac 实时验证
- 🔧 自动修复: 3 轮智能修复引擎
- 📊 批量转换: 支持整个项目目录转换
- 🌐 Web 界面: Vue3 + Monaco Editor
- 💾 数据持久化: SQLite 数据库
- 🚀 CLI 工具: 6 个实用命令
- 📋 报告导出: Markdown/HTML/PDF
🚀 快速开始
1. 克隆项目
git clone <repository-url>
cd CodePlay
2. 启动 Web 前端
cd CodePlay.Web
npm install
npm install monaco-editor
npm run dev
3. 启动 Web API
dotnet run --project CodePlay.WebAPI --urls "http://localhost:5000"
Swagger: http://localhost:5000/swagger
4. 使用 CLI
# 查看帮助
dotnet run --project CodePlay.CLI -- --help
# 单文件转换
dotnet run --project CodePlay.CLI -- convert -s CSharp -t Java -i input.cs -o output.java
# 批量转换
dotnet run --project CodePlay.CLI -- convert -s CSharp -t Java -i ./src -b
# 查看统计
dotnet run --project CodePlay.CLI -- stats
📖 文档
🛠️ 技术栈
后端
- .NET 8.0
- Entity Framework Core 8.0
- Roslyn (C# 解析)
- SQLite
前端
- Vue 3
- Element Plus
- Monaco Editor
工具
- xUnit (单元测试)
- Serilog (日志)
- Swagger (API 文档)
📊 项目统计
| 指标 | 数值 |
|---|---|
| 代码行数 | ~6,000 |
| 测试用例 | 42 |
| 测试通过率 | 97.6% |
| 支持语言 | C#, Java |
| 转换方向 | 双向 |
🤝 贡献
欢迎提交 Issue 和 Pull Request!
📄 许可证
MIT License
Description
Languages
C#
80.1%
Vue
11.8%
HTML
3.8%
TypeScript
2.3%
CSS
1.8%
Other
0.2%