Rumah >pembangunan bahagian belakang >C++ >Bagaimana Saya Boleh Menangkap Output Cetakan Prosedur Tersimpan dalam Aplikasi .NET?
Mengakses Output Cetakan Prosedur Tersimpan dalam Aplikasi .NET
Memodenkan aplikasi selalunya melibatkan penyepaduan sistem warisan, mengemukakan cabaran seperti mengendalikan prosedur tersimpan menggunakan pernyataan PRINT
untuk pengelogan ralat. Kaedah ini, walaupun berfungsi dalam SQL Server Management Studio atau antara muka baris arahan, tidak boleh diakses secara langsung dalam .NET. Artikel ini menunjukkan cara untuk menangkap output ini dan mengubah halanya untuk pengurusan yang lebih baik.
Penyelesaian melibatkan penggunaan acara InfoMessage
kelas SqlConnection
. Dengan melanggan acara ini, aplikasi .NET anda boleh memintas dan memproses PRINT
kenyataan daripada prosedur tersimpan.
Berikut ialah contoh ilustrasi:
<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>
Pendekatan ini memastikan bahawa mesej ralat kritikal daripada prosedur tersimpan warisan tidak diabaikan semasa proses penyepaduan, mengekalkan integriti data dan memperkemas peralihan kepada .NET.
Atas ialah kandungan terperinci Bagaimana Saya Boleh Menangkap Output Cetakan Prosedur Tersimpan dalam Aplikasi .NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!