Dans une application ASP.NET, j'ai un petit nombre d'opérations assez complexes et fréquemment utilisées à exécuter sur une base de données. Dans ces opérations, une ou plusieurs tables ont besoin de mises à jour ou d'insertions basées sur une évaluation logique des paramètres d'entrée et des valeurs de certaines tables. J'ai maintenu une séparation de la logique et l'accès aux données, l'opération ressemble actuellement à ceci:Procédures stockées CLR
- Demande reçue du client
- couche d'affaires invoque couche de données pour récupérer des données à partir base de données
- des processus de la couche d'affaires résultat et détermine l'opération à exécuter
- couche d'affaires invoque opération de données appropriée
- Réponse envoyée au client
Comme vous pouvez le voir, le client est maintenu en attente pendant que deux demandes distinctes sont faites à la base de données. En cherchant une solution à ce problème, j'ai trouvé des procédures stockées CLR, mais je ne suis pas sûr d'avoir la bonne idée de leur utilité.
J'ai écrit un remplacement pour le code ci-dessus qui place notamment les étapes 2-4 dans un SPR CLR. Ma compréhension est que le SP sera exécuté localement par SQL Server et qu'un seul appel est effectué sur le serveur.
Ma question est fondamentalement, est-ce l'utilisation prévue de SPR CLR ou est-ce que je manque quelque chose? Je réalise que c'est un peu un compromis structurellement, donc s'il y a une meilleure façon de le faire, j'aimerais l'entendre.