技能 dotnet-backend-patterns
📦

dotnet-backend-patterns

安全

Construye backends .NET de producción con patrones modernos

也可从以下获取: wshobson

El desarrollo de aplicaciones empresariales .NET requiere dominar patrones complejos para acceso a datos, inyección de dependencias y arquitectura limpia. Esta skill proporciona patrones probados en batalla para EF Core, Dapper, caché y diseño de API resiliente.

支持: Claude Codex Code(CC)
🥈 78 白银
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“dotnet-backend-patterns”。 Genera un patrón repository para la entidad Order

预期结果:

Una clase OrderRepository completa con métodos CRUD async, usando IDbConnectionFactory para gestión de conexiones, soporte adecuado de CancellationToken y Dapper para ejecución de consultas

正在使用“dotnet-backend-patterns”。 Optimiza esta consulta EF Core con múltiples includes

预期结果:

Consulta refactorizada usando AsNoTracking, AsSplitQuery para colecciones grandes, proyección Select a DTO y CompiledAsyncQuery para consultas ejecutadas frecuentemente

安全审计

安全
v1 • 2/24/2026

All 134 static analysis findings are false positives. The 'backtick execution' patterns (87 locations) are markdown code fences in documentation files. The 'weak cryptographic algorithm' findings (11 locations) are LINQ Expression<Func> patterns for the Specification pattern. The 'system reconnaissance' and 'filesystem' findings are normal C# property access and YAML frontmatter. This is a legitimate educational skill containing documentation and code examples for .NET backend development.

6
已扫描文件
2,602
分析行数
0
发现项
1
审计总数
未发现安全问题
审计者: claude

质量评分

55
架构
100
可维护性
87
内容
50
社区
100
安全
91
规范符合性

你能构建什么

Desarrollo de API desde cero

Construye una nueva API REST desde cero con capas apropiadas, inyección de dependencias y patrones de acceso a datos.

Modernización de código heredado

Refactoriza código existente de .NET Framework a patrones .NET modernos con rendimiento y mantenibilidad mejorados.

Revisión de optimización de rendimiento

Revisa y optimiza código de acceso a datos existente para aplicaciones basadas en EF Core o Dapper.

试试这些提示

Configuración del patrón Repository
Crea una implementación del patrón repository para una entidad Product con operaciones CRUD usando Entity Framework Core. Incluye métodos async, disposición adecuada y sigue principios de arquitectura limpia.
Revisión de optimización de consultas
Revisa esta consulta EF Core para problemas de rendimiento. Identifica problemas N+1, llamadas AsNoTracking faltantes y oportunidades para proyección. Sugerir alternativas optimizadas.
Implementación Dapper Micro-ORM
Implementa un repositorio basado en Dapper para operaciones de lectura de alto rendimiento. Incluye gestión de conexiones, manejo de parámetros y multi-mapping para tablas con joins.
Capa de servicio de arquitectura limpia
Diseña una capa de servicio que orqueste llamadas a repositorios, caché y validación. Aplica inyección de dependencias, separación CQRS y patrones de resiliencia para llamadas externas.

最佳实践

  • Usa AsNoTracking para consultas de solo lectura para reducir sobrecarga de memoria
  • Registra contextos de base de datos y conexiones con ciclo de vida Scoped en DI
  • Aplica el patrón specification para criterios de consulta complejos y componibles

避免

  • Llamadas síncronas a base de datos en flujos de código async: siempre usa métodos Async
  • Cargar entidades completas cuando solo se necesitan columnas específicas
  • Permitir que lazy loading dispare problemas de consultas N+1

常见问题

¿Cuándo debería usar Dapper en lugar de EF Core?
Usa Dapper para consultas críticas de rendimiento, SQL complejo (CTEs, funciones de ventana) o cargas de trabajo intensivas en lectura. Usa EF Core para modelos de dominio ricos con relaciones, necesidades de seguimiento de cambios, o cuando prefieres traducción LINQ-to-SQL.
¿Qué es el patrón specification y cuándo debería usarlo?
El patrón specification encapsula criterios de consulta en clases reutilizables. Úsalo para consultas complejas que se reutilizan en toda tu aplicación, o cuando necesitas criterios de filtro componibles con paginación y ordenamiento.
¿Cómo prevengo problemas de consultas N+1 en EF Core?
Usa Include para carga ansiosa (eager loading) de datos relacionados, evita lazy loading en bucles, y usa AsSplitQuery al incluir múltiples colecciones para prevenir explosión cartesiana.
¿Cuál es el ciclo de vida recomendado para DbContext?
El ciclo de vida Scoped es recomendado para DbContext en aplicaciones web. Esto asegura una instancia por petición HTTP, lo cual es necesario para patrones de seguimiento de cambios y mapa de identidad.
¿Cómo puedo mejorar el rendimiento de consultas EF Core?
Usa AsNoTracking para consultas de solo lectura, proyecta a DTOs con Select, usa consultas compiladas para rutas críticas (hot paths), aplica indexación adecuada, y evita evaluación en cliente asegurando que las consultas puedan traducirse a SQL.
¿Qué estrategia de caché debería implementar?
Usa caché en memoria para datos pequeños y frecuentemente accedidos dentro de una sola instancia. Usa Redis para caché distribuido a través de múltiples instancias. Siempre establece tiempos de expiración y tiene lógica de fallback para fallos de caché.