ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

dotnet/skills写标准ASP.NET Core API:dotnet-aspnetcore插件使用指南

2026/9/17 2:31:17 拓冰建站 浏览量
dotnet/skills写标准ASP.NET Core API:dotnet-aspnetcore插件使用指南 dotnet/skills写标准ASP.NET Core APIdotnet-aspnetcore插件使用指南【免费下载链接】skillsRepository for skills to assist AI coding agents with .NET and C#项目地址: https://gitcode.com/GitHub_Trending/skills17/skills想让 AI 编程助手写出标准的 ASP.NET Core API而不是东拼西凑的代码片段skills仓库中的dotnet-aspnetcore 插件正是为此而生——它是 .NET 团队官方维护的 AI 技能包内置 Web API 规范、OpenAPI 文档、文件上传、可观测性等实战技能让 Copilot、Claude Code 等编程助手按工业级标准为你生成 API 代码。 插件一览4 个技能各管一摊dotnet-aspnetcore 插件plugins/dotnet-aspnetcore/plugin.json专注于 ASP.NET Core 的 Web 开发场景包含 4 个技能Skill技能适用场景技能文件dotnet-webapi新增/修改 Web API 端点、OpenAPI/Swagger 配置、.http测试文件、全局错误处理SKILL.mdminimal-api-file-uploadMinimal API 文件上传大小限制、内容类型校验、大文件流式处理SKILL.mdconfiguring-opentelemetry-dotnet分布式追踪、指标、日志的 OpenTelemetry 接入SKILL.mdconvert-blazor-server-to-webapp把 .NET 8 之前的 Blazor Server 应用迁移为 Blazor Web AppSKILL.md每个技能都有明确的何时使用 / 何时不用边界。例如dotnet-webapi会主动声明EF Core 查询优化请交给optimizing-ef-core-queries技能Blazor 前端改动不在其职责范围内——避免 AI 越界瞎写。 快速上手三步安装 dotnet-aspnetcore 插件第 1 步添加插件市场在 Copilot CLI 或 Claude Code 中执行/plugin marketplace add dotnet/skills第 2 步安装插件/plugin install dotnet-aspnetcoredotnet-agent-skills第 3 步重启并查看技能重启后输入/skills即可看到已加载的 ASP.NET Core 技能。VS Code 用户在设置中开启chat.plugins.enabled: true并添加市场源即可浏览安装完整安装说明见 README.md。安装完成后无需额外配置——只要你提出帮我建一个产品管理的 API这类需求助手就会自动调用对应技能。⭐ 核心技能精讲dotnet-webapi 如何写出标准 API这是插件中含金量最高的技能。它把写标准 ASP.NET Core API拆成了8 步标准工作流AI 会逐步执行并自我校验1️⃣ 先判断 API 风格再动笔扫描你的项目已有 Controller 就继续用 Controller已有 Minimal API 就继续用 Minimal API新项目默认 Minimal API且绝不在同一项目里混用两种风格。2️⃣ 用 sealed record 定义请求/响应 DTO一律使用不可变的sealed record禁止用可变类也绝不把数据库实体直接暴露给 API命名有严格约定CreateProductRequest、ProductResponse、ProductListResponse每个 DTO 都要写summaryXML 注释——它们会自动流入生成的 OpenAPI 文档日期时间字段统一用DateTimeOffset而非DateTime序列化时自带时区偏移避免客户端踩时区坑。3️⃣ 端点实现遵循 HTTP 语义技能内置了一张状态码对照表POST创建成功必须返回201 Created Location 头DELETE成功返回204 No Content每个端点签名都要接收CancellationToken并透传到所有异步调用。Minimal API 优先使用TypedResults让 OpenAPI 生成器拿到更丰富的类型元数据。4️⃣ 接入内置 OpenAPI不装 Swashbuckle针对 .NET 9 项目技能明确要求使用框架内置的AddOpenApi()MapOpenApi()禁止给新项目引入Swashbuckle.*系列包已知兼容性问题。每个端点还要链上.WithName()、.WithSummary()、.WithDescription()、.ProducesT()生成真正能看懂的接口文档。5️⃣ 全局错误处理 6️⃣ 服务层 7️⃣.http文件使用 RFC 7807Problem Details统一错误响应异常处理器统一放在Middleware/目录端点不直接碰数据存储而是通过接口 服务类解耦方便单元测试自动为你生成.http请求测试文件覆盖每个新端点兼当活文档和手动测试脚本。8️⃣ 构建验证收尾最后一步是运行构建确认零错误零警告启动应用验证/openapi/v1.json可访问再逐条跑.http文件确认状态码正确。 内置常见坑清单AI 替你避雷技能文件里维护了一张高频踩坑表见 SKILL.md 的 Common Pitfalls 部分典型如常见错误插件的正确做法POST 创建返回 200必须返回 201 Location 头DTO 用{ get; set; }可变类改用sealed record端点漏掉CancellationToken签名必带并全链路透传日期字段用DateTime统一DateTimeOffset枚举序列化成数字配置JsonStringEnumConverter输出字符串新项目装 Swashbuckle使用内置 OpenAPI 支持 其他三个技能覆盖 API 开发的周边文件上传minimal-api-file-upload这是新手最容易翻车的场景。技能内置了大量CRITICAL级别提醒——请求体大小有Kestrel 与 FormOptions 两层限制只调一层上传照样失败.NET 8 的防伪造验证会自动校验表单上传纯 API 上传端点必须显式.DisableAntiforgery()文件名绝不能信任防路径穿越还要校验文件魔数而非只看扩展名超大文件则用MultipartReader流式落盘。可观测性configuring-opentelemetry-dotnet精确告诉你该装哪几个 OpenTelemetry 包例如只装OpenTelemetry主包是不够的需要OpenTelemetry.Extensions.Hosting并给出 Program.cs 的完整接线模板支持 OTLP 导出、健康检查端点过滤等。Blazor 迁移convert-blazor-server-to-webapp把AddServerSideBlazor/_Host.cshtml老式架构迁移到 .NET 8 的AddRazorComponents/App.razor模型且每完成一个逻辑步骤就建议提交一次保证迁移过程可审查、可回滚。 质量有据可查技能不是玄学提示词你可能好奇这些技能真能让 AI 写得更好吗仓库自带一套技能评估体系——每个技能都有对应的评测用例如 tests/dotnet-aspnetcore/dotnet-webapi/eval.yaml用带技能 vs 不带技能的成对对比来量化效果判断标准是均值偏好提升且在 95% 置信区间内为正才算可信改进。下图就是评估结果在代码评审中的展示形态以dotnet-webapi的评测为例评分规则非常具体是否用了 Minimal API、POST 是否返回 201 Location、DTO 是否为 sealed record、时间是否用DateTimeOffset、是否接入内置 OpenAPI 且未引入 Swashbuckle……这些正是上文标准工作流里要求的每一条。 新手上手建议一句话起步装好插件后直接告诉助手帮我创建一个产品管理的 ASP.NET Core API.NET 10包含增删查端点和 OpenAPI 文档技能会自动激活看它的自检清单dotnet-webapi技能自带 19 项验证清单AI 完成后可主动要求它按 Validation 清单自查一遍按需组合需要上传接口就补充加一个图片上传端点触发文件上传技能上线前可再提接入 OpenTelemetry 追踪一次补齐可观测性深入了解更多插件与标准说明见 README.mdAI 代理工作流背景知识可参考 docs/agentic-workflows.md。✅ 小结dotnet-aspnetcore 插件把 .NET 团队对标准 ASP.NET Core API的定义——HTTP 语义、不可变 DTO、内置 OpenAPI、统一错误处理、文件上传安全、可观测性——打包成了 AI 可直接执行的技能。对新手来说它相当于随叫随到的资深 .NET 架构师对团队来说它让不同人、不同模型写出的 API 代码风格和质量保持一致。三步安装开箱即用建议所有 .NET Web 开发者都装上试试。【免费下载链接】skillsRepository for skills to assist AI coding agents with .NET and C#项目地址: https://gitcode.com/GitHub_Trending/skills17/skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考