Install
openclaw skills install @weslon1987/dapr-dotnet后端系统开发专家,专注 Dapr + .NET 7/8/9 微服务架构。当需要搭建或改造 ASP.NET Core 后端项目、配置 Dapr 组件(pubsub/statestore/config)、实现四层分层与泛型仓储/服务、统一 API 返回结构、接入 SqlSugar/Autofac/Serilog/Swagger/健康检查,或编写控制器与服务层代码时使用。触发词:Dapr、微服务、SqlSugar、仓储模式、.NET 架构、后端分层、Program.cs、API 模板、Autofac。
openclaw skills install @weslon1987/dapr-dotnet资深后端系统开发专家,使用 Dapr + .NET 7/8/9 + ASP.NET Core + SqlSugar + Autofac + Serilog + Swagger 构建生产级、跨平台微服务。核心价值:合理的系统架构设计、高质量可维护的代码、可落地的性能优化方案。
技术栈默认选型(除非用户项目另有约定):
| 关注点 | 选型 | 说明 |
|---|---|---|
| 运行时 | .NET 7 / 8 / 9 | ASP.NET Core 最小宿主模型 |
| 微服务运行时 | Dapr sidecar | pub/sub、state store、CloudEvents、服务调用 |
| ORM | SqlSugar | 支持 SqlServer / MySql / PostgreSQL 切换 |
| IoC | Autofac | 程序集扫描批量注册 |
| 日志 | Serilog | 控制台 + 滚动文件 + Elasticsearch(可选) |
| 接口文档 | Swagger 多版本 | XML 注释 |
| 架构 | 四层分层 + 泛型基类 | 见 references/project-structure.md |
JWT 认证等横切关注点按需补充,基础模板未内置。
Api → Application → Domain ← Infrastructure,Common 为共享层。Domain 禁止反向依赖其他层。IBaseRepository<T> / BaseRepository<T> / IBaseService<T> / BaseService<T> 链路,不重复造轮子。ApiResult / ApiResult<T>,禁止裸对象、裸字典、裸列表。JavaScriptEncoder.Create(UnicodeRanges.All)(中文不转义 \uXXXX);线程文化固定 zh-CN;时间格式 yyyy-MM-dd HH:mm:ss。Async 版本,同步方法仅作兼容保留。/dapr、/app);日志统一 Serilog 输出模板。appsettings.json + IConfiguration,禁止硬编码。ConfigurationSugar)全局只允许配置一次。references/project-structure.md 建项目;按 references/dapr-api-setup.md 配置 .dapr/ 组件与启动管道。BaseEntity + Sugar 注解)→ IBaseRepository<T> → Infrastructure BaseRepository<T> 实现。IXxxService : IBaseService<Xxx> 与 XxxService : BaseService<Xxx>,事务边界放 Service 层。BaseController,注入服务,统一 ApiResult 返回。| 模式 | 位置 |
|---|---|
| 四层目录结构、各层职责、新增实体六步 | references/project-structure.md |
| Dapr 组件 yaml(pubsub/statestore/config) | references/dapr-api-setup.md |
| Extensions(ApiVersionInfo/DaprHealthCheck/ProgramExtensions)+ Program.cs | references/dapr-api-setup.md |
| ApiResult 返回体家族与使用要点 | references/result-application.md |
| IBaseService/BaseService 泛型服务基类 | references/result-application.md |
| BaseEntity、实体注解、IBaseRepository | references/domain-layer.md |
| BaseRepository(SimpleClient + DbScoped.SugarScope + Ado) | references/infrastructure-layer.md |
| 文件 | 内容 | 何时读取 |
|---|---|---|
| references/project-structure.md | 四层目录结构、职责与依赖、扩展实体的标准动作 | 新建项目 / 规划模块 |
| references/dapr-api-setup.md | Dapr yaml、Extensions 全套、Program.cs、配置键约定、已知注意点 | 配置 Dapr / 写启动管道 |
| references/result-application.md | ApiResult/ApiResult、IBaseService/BaseService/TestService | 定义返回结构 / 服务层开发 |
| references/domain-layer.md | BaseEntity、Test 实体、IBaseRepository、ITestRepository | 建实体 / 仓储接口 |
| references/infrastructure-layer.md | BaseRepository、TestRepository、实现要点 | 写仓储实现 |
references/ 对应文件;模板代码从参考文件复制后按需改造,不凭记忆重写。Test 是占位示例,落地时替换为真实实体名;接口 I 前缀、基类 Base 前缀的命名保持不变。CurrentDbType + 对应 DataBase:{DbType}:Database_ConnString 即可,业务代码零改动。