mcpField
D
dotnet-core-expert

dotnet-core-expert

github.com/404kidwiz开发88 次安装
代码仓库

关于 dotnet-core-expert

.NET Core Expert 是面向跨平台 .NET 开发的技能,适用于开发者构建移动和桌面应用、控制台工具及云原生服务。内容涵盖 .NET MAUI、跨平台部署和 Native AOT 编译。

主要功能

  1. 01开发 .NET MAUI 应用
  2. 02构建跨平台控制台工具
  3. 03配置跨平台部署
  4. 04使用 Native AOT 编译
  5. 05处理跨平台文件与进程

适用场景

  1. 01开发移动端与桌面端 .NET 应用
  2. 02将 .NET 应用部署到 Linux 容器
  3. 03构建跨平台命令行工具
  4. 04为应用启用 Native AOT 编译

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill dotnet-core-expert

安装后在 Claude Code 中输入/dotnet-core-expert确认已加载。

详细介绍

.NET Core 专家

目的

提供跨平台 .NET 开发方面的专业知识,包括用于移动端/桌面端的 .NET MAUI、跨平台控制台应用和云原生 .NET 服务。涵盖 .NET 8 功能和跨平台部署。

适用场景

  • 构建跨平台 .NET 应用
  • 使用 .NET MAUI 开发(移动端/桌面端)
  • 创建跨平台控制台工具
  • 将 .NET 部署到 Linux 容器
  • 构建云原生 .NET 服务
  • 跨平台处理文件和进程
  • 使用 .NET Native AOT 编译

快速入门

在以下情况调用此技能:

  • 构建跨平台 .NET 应用
  • 使用 .NET MAUI 开发
  • 创建跨平台控制台工具
  • 将 .NET 部署到 Linux 容器
  • 使用 .NET Native AOT 编译

以下情况请勿调用:

  • 仅限 Windows 的 WPF/WinForms(请使用 windows-app-developer)
  • 旧版 .NET Framework(请使用 dotnet-framework-4.8-expert)
  • 专门针对 Web API 的开发(请使用 csharp-developer)
  • Azure 基础设施(请使用 azure-infra-engineer)

决策框架

Cross-Platform UI:
├── Mobile + Desktop → .NET MAUI
├── Desktop only → Avalonia or MAUI
├── Web → Blazor
└── Console → Cross-platform console app

Deployment Target:
├── Linux containers → Self-contained, Alpine
├── Windows service → Worker service
├── macOS app → .NET MAUI or Avalonia
├── Single file → Publish single-file
└── Fast startup → Native AOT

核心工作流

1. .NET MAUI 应用设置
  1. 使用模板创建 MAUI 项目
  2. 配置目标平台
  3. 搭建 MVVM 架构
  4. 实现平台专属代码
  5. 为原生功能添加处理程序
  6. 配置应用生命周期
  7. 在各个平台上测试
2. 跨平台部署
  1. 配置 RuntimeIdentifiers
  2. 选择独立部署或依赖框架部署
  3. 按需设置裁剪
  4. 处理平台专属路径
  5. 为各个平台打包
  6. 在目标操作系统上测试
3. Native AOT 编译
  1. 在项目中启用 PublishAot
  2. 检查 AOT 兼容性
  3. 处理反射限制
  4. 测试裁剪后的应用
  5. 验证启动性能
  6. 部署优化后的二进制文件

最佳实践

  • 使用 Path.Combine 处理跨平台路径
  • 检查 RuntimeInformation.IsOSPlatform
  • 少用条件编译
  • 在所有目标平台上测试
  • 使用跨平台抽象
  • 正确处理换行符

反模式

反模式问题正确做法
Windows 路径在 Linux/Mac 上无法正常工作使用 Path.Combine
到处使用 P/Invoke依赖特定平台使用跨平台 API
忽视大小写敏感性在 Linux 上运行失败保持大小写一致
未在目标平台上测试运行时故障为各个平台配置 CI
使用 AOT 时大量反射裁剪会导致应用故障使用源生成器

评论

支持 Markdown