用途:该技能为指定仓库提供 C# 与 ASP.NET Core 编码规范,指导编写安全、干净的代码,包括 API 端点实现、中间件配置、身份验证设置及 Agent Framework 服务使用。
主要能力:
- 开发工作流:后端以 dotnet watch run 监视模式运行,保存 C# 文件自动重新编译,通过 VS Code 终端查看编译输出,无需重启。
- Minimal API 模式:使用类型化请求模型、CancellationToken、IHostEnvironment,配合 RequireAuthorization 与 WithName。
- 身份验证:JWT Bearer 与 Entra ID,使用 AddMicrosoftIdentityWebApi 绑定 AzureAd 配置。
- 异步与流式:async/await 搭配 CancellationToken,禁止 .Result 或 .Wait();流式使用 IAsyncEnumerable 与 EnumeratorCancellation。
- 凭据策略:开发环境用 ChainedTokenCredential(AzureCliCredential、AzureDeveloperCliCredential),生产用 ManagedIdentityCredential。
- IDisposable 模式:使用 SemaphoreSlim、CancellationTokenSource 与释放守卫。
- 错误响应:使用 ErrorResponseFactory.CreateFromException(),遵循 RFC 7807。
- 中间件管道:静态文件→CORS→身份验证→授权→路由,SPA 回退 MapFallbackToFile 必须最后。
- Agent Framework 服务:使用 Azure.AI.Projects、Azure.AI.Projects.Agents、Azure.AI.Extensions.OpenAI 等 SDK 包,处理代理加载、流式响应、图像验证(最多 5 张、每张 5MB、支持 png/jpeg/gif/webp)与标注类型。
- 配置加载:自动读取 .env 文件。
- 故障排查:检查 WebApp.Api.csproj 版本,使用 PowerShell 反射查看 .NET 程序集类型成员。
使用方式:在编写或修改 C# 代码、实现 API 端点、配置中间件、处理身份验证、流式响应或 SDK 问题时参考本规范。测试更改可使用 Playwright 浏览器工具或直接调用端点。
限制:规范针对特定仓库,部分 SDK 为测试版,类型可能与文档不符;反射仅返回原始 API 接口,不包含用途说明。未提供收费、价格或平台信息。