Maison >développement back-end >C++ >Comment puis-je capturer la sortie PRINT à partir de procédures stockées dans .NET ?

Comment puis-je capturer la sortie PRINT à partir de procédures stockées dans .NET ?

DDD
DDDoriginal
2025-01-17 16:37:11324parcourir

How Can I Capture PRINT Output from Stored Procedures in .NET?

Récupération de la sortie PRINT à partir de procédures stockées dans les applications .NET

Capturer efficacement PRINT la sortie des procédures stockées dans les applications .NET est essentiel, en particulier lorsqu'il s'agit de systèmes plus anciens qui utilisent des instructions PRINT pour la gestion des erreurs et la journalisation. Illustrons comment capturer le "mot" de sortie de la procédure stockée "usp_PrintWord":

<code class="language-sql">-- Stored Procedure
CREATE PROC usp_PrintWord
AS
BEGIN
    PRINT 'word'
END;</code>

Solution .NET :

Les étapes suivantes montrent comment capturer cette PRINT sortie dans votre code .NET :

  1. Attacher un gestionnaire d'événements : Abonnez-vous à l'événement InfoMessage de votre connexion SQL. Cet événement se déclenche pour les messages d'information générés lors des interactions avec la base de données.
<code class="language-csharp">myConnection.InfoMessage += new SqlInfoMessageEventHandler(myConnection_InfoMessage);</code>
  1. Traitement de l'événement : Dans le gestionnaire d'événements, accédez à la propriété Message du SqlInfoMessageEventArgs pour récupérer la sortie PRINT.
<code class="language-csharp">void myConnection_InfoMessage(object sender, SqlInfoMessageEventArgs e)
{
    Console.WriteLine(e.Message);
}</code>
  1. Exécuter la procédure stockée : Exécutez votre procédure stockée en utilisant SqlCommand comme vous le feriez normalement. La sortie PRINT sera capturée et affichée dans la console (ou partout où votre gestionnaire d'événements dirige la sortie).

Cette approche fournit un moyen simple et efficace d'accéder PRINT à la sortie de vos procédures stockées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn