Maison > développement back-end > C++ > Comment puis-je capturer la sortie d'impression de procédure stockée dans les applications .NET ?

Comment puis-je capturer la sortie d'impression de procédure stockée dans les applications .NET ?

Patricia Arquette
Libérer: 2025-01-17 16:22:09
original
124 Les gens l'ont consulté

How Can I Capture Stored Procedure Print Output in .NET Applications?

Accès à la sortie d'impression de procédure stockée dans les applications .NET

La modernisation des applications implique souvent l'intégration de systèmes existants, ce qui présente des défis tels que la gestion des procédures stockées à l'aide de l'instruction PRINT pour la journalisation des erreurs. Cette méthode, bien que fonctionnelle dans SQL Server Management Studio ou dans les interfaces de ligne de commande, n'est pas directement accessible dans .NET. Cet article montre comment capturer cette sortie et la rediriger pour une meilleure gestion.

La solution consiste à utiliser l'événement InfoMessage de la classe SqlConnection. En vous abonnant à cet événement, votre application .NET peut intercepter et traiter les PRINT instructions des procédures stockées.

Voici un exemple illustratif :

<code class="language-csharp">using System.Data.SqlClient;
using System.Data;

// Connection string (replace with your actual connection string)
string connectionString = @"<conn_string>";

using (SqlConnection connection = new SqlConnection(connectionString))
{
    // Subscribe to the InfoMessage event
    connection.InfoMessage += Connection_InfoMessage;

    // Prepare the stored procedure call
    SqlCommand cmd = new SqlCommand("usp_printWord", connection);
    cmd.CommandType = CommandType.StoredProcedure;

    connection.Open();

    // Execute the stored procedure
    cmd.ExecuteNonQuery();

    connection.Close();
}

// Event handler to process the captured output
void Connection_InfoMessage(object sender, SqlInfoMessageEventArgs e)
{
    // Display the captured message
    Console.WriteLine(e.Message);
}</code>
Copier après la connexion

Cette approche garantit que les messages d'erreur critiques provenant des procédures stockées héritées ne sont pas négligés pendant le processus d'intégration, préservant ainsi l'intégrité des données et rationalisant la transition vers .NET.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal