Compétences dotnet-backend-patterns
📦

dotnet-backend-patterns

Sûr

Créez des backends .NET de production avec des patterns modernes

Également disponible depuis: wshobson

Le développement d'applications .NET d'entreprise nécessite la maîtrise de patterns complexes pour l'accès aux données, l'injection de dépendances et l'architecture propre. Cette compétence fournit des patterns éprouvés pour EF Core, Dapper, la mise en cache et la conception d'API résilientes.

Prend en charge: Claude Codex Code(CC)
🥈 78 Argent
1

Télécharger le ZIP du skill

2

Importer dans Claude

Allez dans Paramètres → Capacités → Skills → Importer un skill

3

Activez et commencez à utiliser

Tester

Utilisation de "dotnet-backend-patterns". Générer un pattern référentiel pour l'entité Order

Résultat attendu:

Une classe OrderRepository complète avec des méthodes CRUD async, utilisant IDbConnectionFactory pour la gestion des connexions, le support approprié de CancellationToken et Dapper pour l'exécution des requêtes

Utilisation de "dotnet-backend-patterns". Optimiser cette requête EF Core avec plusieurs includes

Résultat attendu:

Requête refactorisée utilisant AsNoTracking, AsSplitQuery pour les grandes collections, la projection Select vers DTO et CompiledAsyncQuery pour les requêtes fréquemment exécutées

Audit de sécurité

Sûr
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
Fichiers analysés
2,602
Lignes analysées
0
résultats
1
Total des audits
Aucun problème de sécurité trouvé
Audité par: claude

Score de qualité

55
Architecture
100
Maintenabilité
87
Contenu
50
Communauté
100
Sécurité
91
Conformité aux spécifications

Ce que vous pouvez construire

Développement d'API Greenfield

Créez une nouvelle API REST à partir de zéro avec une couche appropriée, l'injection de dépendances et les patterns d'accès aux données.

Modernisation de Code Legacy

Refactorisez le code .NET Framework existant vers des patterns .NET modernes avec des performances et une maintenabilité améliorées.

Revue d'Optimisation des Performances

Revue et optimisez le code d'accès aux données existant pour les applications basées sur EF Core ou Dapper.

Essayez ces prompts

Configuration du Pattern Référentiel
Créez une implémentation du pattern référentiel pour une entité Product avec des opérations CRUD en utilisant Entity Framework Core. Incluez des méthodes async, une disposition appropriée et suivez les principes d'architecture propre.
Revue d'Optimisation de Requête
Revuevez cette requête EF Core pour les problèmes de performance. Identifiez les problèmes N+1, les appels AsNoTracking manquants et les opportunités de projection. Suggérez des alternatives optimisées.
Implémentation Micro-ORM Dapper
Implémentez un référentiel basé sur Dapper pour des opérations de lecture haute performance. Incluez la gestion des connexions, le traitement des paramètres et le multi-mapping pour les tables jointes.
Couche Service Architecture Propre
Concevez une couche service qui orchestre les appels de référentiel, la mise en cache et la validation. Appliquez l'injection de dépendances, la séparation CQRS et les patterns de résilience pour les appels externes.

Bonnes pratiques

  • Utilisez AsNoTracking pour les requêtes en lecture seule pour réduire la surcharge mémoire
  • Enregistrez les contextes de base de données et connexions comme durée de vie Scoped dans le DI
  • Appliquez le pattern spécification pour les critères de requête complexes et composables

Éviter

  • Appels de base de données synchrones dans les chemins de code async - utilisez toujours les méthodes Async
  • Chargement d'entit��s complètes lorsque seules des colonnes spécifiques sont nécessaires
  • Autoriser le chargement différé à déclencher des problèmes de requête N+1

Foire aux questions

Quand dois-je utiliser Dapper au lieu d'EF Core ?
Utilisez Dapper pour les requêtes critiques en performance, SQL complexe (CTEs, fonctions de fenêtrage) ou charges de travail lourdes en lecture. Utilisez EF Core pour les modèles de domaine riches avec des relations, les besoins de suivi des modifications ou lorsque vous préférez la traduction LINQ-to-SQL.
Qu'est-ce que le pattern spécification et quand dois-je l'utiliser ?
Le pattern spécification encapsule les critères de requête dans des classes réutilisables. Utilisez-le pour les requêtes complexes réutilisées dans votre application, ou lorsque vous avez besoin de critères de filtrage composables avec pagination et tri.
Comment prévenir les problèmes de requête N+1 dans EF Core ?
Utilisez Include pour le chargement eager des données associées, évitez le chargement différé dans les boucles, et utilisez AsSplitQuery lors de l'inclusion de plusieurs collections pour prévenir l'explosion cartésienne.
Quelle est la durée de vie de service recommandée pour DbContext ?
La durée de vie Scoped est recommandée pour DbContext dans les applications web. Cela assure une instance par requête HTTP, ce qui est requis pour les patterns de suivi des modifications et de carte d'identité.
Comment puis-je améliorer les performances des requêtes EF Core ?
Utilisez AsNoTracking pour les requêtes en lecture seule, projetez vers des DTOs avec Select, utilisez des requêtes compilées pour les chemins chauds, appliquez un indexage approprié, et évitez l'évaluation côté client en assurant que les requêtes peuvent se traduire en SQL.
Quelle stratégie de mise en cache dois-je implémenter ?
Utilisez le cache mémoire pour les petites données fréquemment accédées dans une seule instance. Utilisez Redis pour la mise en cache distribuée sur plusieurs instances. Définissez toujours des temps d'expiration et avez une logique de secours pour les absences du cache.