.NET跨平台开发专家Skill dotnet-core-expert

本技能提供 .NET 8 跨平台开发的专业指导,涵盖 .NET MAUI 移动/桌面应用开发、跨平台控制台工具创建、云原生服务构建及 Linux 容器部署。核心内容包括 Native AOT 编译优化、跨平台路径处理、多平台测试策略及反模式规避。适用于需要为 Windows、macOS、Linux 及移动端构建高性能、可移植 .NET 应用的开发者。关键词:.NET 跨平台开发, .NET MAUI, 云原生 .NET, Native AOT, 跨平台部署, C# 开发, Linux 容器, 移动应用开发

移动开发 0 次安装 0 次浏览 更新于 2/23/2026

名称:dotnet-core-expert 描述:.NET 8 跨平台专家,精通 MAUI、EF Core 和现代 C# 开发。适用于构建跨平台 .NET 应用、使用 .NET MAUI 或为多个操作系统开发应用程序。

.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)

决策框架

跨平台 UI:
├── 移动 + 桌面 → .NET MAUI
├── 仅桌面 → Avalonia 或 MAUI
├── Web → Blazor
└── 控制台 → 跨平台控制台应用

部署目标:
├── Linux 容器 → 自包含、Alpine
├── Windows 服务 → Worker 服务
├── macOS 应用 → .NET MAUI 或 Avalonia
├── 单文件 → 发布单文件
└── 快速启动 → 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 中使用大量反射 修剪破坏应用 使用源生成器