关于 dotnet-framework-4.8-expert
面向维护和扩展 .NET Framework 4.8 应用的开发者技能,涵盖 WCF、ASP.NET MVC 5、Entity Framework 6、旧系统集成及迁移规划。
主要功能
- 01开发 WCF 服务
- 02构建 ASP.NET MVC 5 应用
- 03使用 Entity Framework 6 访问数据
- 04集成 COM 与旧系统
- 05现代化与迁移指导
适用场景
- 01维护企业 .NET Framework 应用
- 02构建 WCF SOAP 或 REST 服务
- 03扩展 ASP.NET MVC 5 应用
- 04规划迁移到现代 .NET
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ 404kidwiz/ claude-supercode-skills --skill dotnet-framework-4.8-expert安装后在 Claude Code 中输入/dotnet-framework-4.8-expert确认已加载。
附带文件EXAMPLES.mdREFERENCE.md
详细介绍
.NET Framework 4.8 专家
用途
提供旧版 .NET Framework 开发方面的专业知识,专长于 WCF 服务、ASP.NET MVC 和企业应用维护。在管理技术债务和迁移策略的同时,支持使用现代模式扩展和集成旧版 .NET 4.8 应用。
适用场景
- 维护或扩展 .NET Framework 4.8 应用
- 开发用于企业集成的 WCF 服务
- 使用 ASP.NET MVC 5 Web 应用
- 管理 Entity Framework 6 数据库访问
- 集成旧版 COM 组件
- 规划迁移到现代 .NET 的策略
快速入门
适用场景
- 维护 .NET Framework 4.x 应用
- 构建或扩展 WCF SOAP/REST 服务
- ASP.NET MVC 5 开发
- Entity Framework 6 数据库操作
- Windows 服务开发
- COM 互操作需求
不适用场景
- 新项目(使用 .NET 8+ 和 dotnet-core-expert)
- 现代 Web API(使用 ASP.NET Core)
- 跨平台需求(使用 .NET 8)
- 容器化部署(优先使用 .NET 8)
核心能力
.NET Framework 4.8 功能
- .NET Framework 4.8 安全性和兼容性功能
- Windows Forms 和 WPF 应用开发
- 使用 Entity Framework 6 访问数据库
- Windows Communication Foundation(WCF)服务
- ASP.NET MVC 5 Web 应用开发
- Windows 服务和后台处理
WCF 服务架构
- 服务协定和数据协定
- 绑定配置(WSHttpBinding、BasicHttpBinding)
- 服务托管和部署
- 安全配置(Transport、Message、Mixed)
- 使用 WebHttpBinding 构建 RESTful 服务
- 双工通信模式
ASP.NET MVC 5 开发
- MVC 模式实现
- Razor 视图引擎和 HTML 帮助程序
- 模型绑定和验证
- 身份验证和授权
- 路由配置和特性路由
- 与 JavaScript 框架集成
旧版系统集成
- 使用 COM 互操作集成旧版组件
- 第三方库管理
- 使用 ADO.NET 连接数据库
- XML 和 SOAP Web 服务调用
- 旧版代码性能优化
- 迁移到现代框架的策略
决策框架
何时现代化,何时维护
Evaluating legacy .NET Framework application?
│
├─ Is it actively developed (>1 feature/month)?
│ │
│ ├─ YES → Does it need cross-platform or containers?
│ │ │
│ │ ├─ YES → **Plan migration to .NET 8** ✓
│ │ │ (use Upgrade Assistant)
│ │ │
│ │ └─ NO → Business-critical?
│ │ │
│ │ ├─ YES → **Incremental modernization** ✓
│ │ │ (strangler fig pattern)
│ │ │
│ │ └─ NO → **Maintain in place** ✓
│ │
│ └─ NO → End-of-life planned?
│ │
│ ├─ YES → **Minimal maintenance** ✓
│ │ (security patches only)
│ │
│ └─ NO → **Maintain in place** ✓
│ (with documentation focus)
WCF 与现代替代方案
| 方面 | WCF | ASP.NET Web API 2 | gRPC |
|---|---|---|---|
| 协议 | SOAP、REST | REST | HTTP/2 |
| 最适合 | 企业级 SOAP | REST API | 高性能服务 |
| 互操作性 | 出色(.NET、Java) | 通用 | 有限 |
| 复杂度 | 高 | 中 | 中 |
| 维护状态 | 旧版 | 旧版 | 现代 |
Entity Framework 6 与替代方案
| 方面 | EF6 | Dapper | ADO.NET |
|---|---|---|---|
| 复杂度 | 低 | 中 | 高 |
| 性能 | 良好 | 出色 | 最佳 |
| 灵活性 | 良好 | 出色 | 完全控制 |
| 最适合 | CRUD 应用 | 对性能要求高的场景 | 复杂查询 |
最佳实践
.NET Framework 开发
- 依赖管理:使用 NuGet Package Manager,固定版本
- 配置:使用 web.config/app.config 转换来适配不同环境
- 日志记录:实现全面的日志记录(log4net、Serilog)
- 错误处理:使用全局异常处理程序和适当的错误页面
- 测试:使用 MSTest 或 NUnit 进行单元测试和集成测试
WCF 服务
- 安全性:使用带有消息安全性的 wsHttpBinding
- 绑定选择:根据需求选择绑定
- 流量限制:配置流量限制、实例化和并发处理
- 错误处理:使用故障协定,实现 IErrorHandler
- 测试:使用 WCF Test Client 或 Postman
ASP.NET MVC
- 控制器模式:使用依赖注入,避免编写业务逻辑
- 视图模型:将视图模型与领域模型分开
- 验证:使用数据注释和 IValidatableObject
- 安全性:使用防伪令牌、输出编码和授权
数据库访问(EF6)
- 上下文管理:每个请求创建一个上下文,采用仓储模式
- 查询优化:使用 Include() 进行预先加载,避免 N+1 问题
- 迁移:使用 Code First Migrations,并进行版本控制
- 性能:编译查询、缓存策略
旧版应用管理
- 技术债务:记录并确定优先级,解决关键问题
- 测试:围绕新功能添加单元测试
- 安全性:保持 .NET Framework 更新至最新补丁
- 文档:维护架构图和数据流文档
- 迁移:评估 .NET Upgrade Assistant
常见用例
企业旧版应用
- 维护现有的业务线应用
- 为成熟系统添加新功能
- 优化旧版代码的性能
- 与现代服务和 API 集成
- 数据库迁移和架构更新
WCF 服务应用
- 企业服务总线实现
- 与第三方系统集成
- SOAP Web 服务开发
- 使用 WCF 创建 RESTful API
- 服务编排与协同
Windows 桌面应用
- 业务线桌面应用
- 数据库驱动的客户端应用
- 与 Office 自动化集成
- 文件处理和报告工具
何时使用此专家
理想场景:
- 维护现有的 .NET Framework 4.8 应用
- 扩展旧版企业系统
- 将新功能与现有 WCF 服务集成
- 增强 ASP.NET MVC 应用
- 开发和维护 Windows 服务
替代方案:
- 对于新应用:考虑 .NET Core/.NET 6+
- 对于 Web API:考虑 ASP.NET Core
- 对于现代桌面应用:考虑使用 .NET 6+ 的 WPF 或 MAUI
其他资源
- 详细技术参考:参见 REFERENCE.md
- 代码示例和模式:参见 EXAMPLES.md
评论
支持 Markdown