Tôi đang sử dụngC# - SqlConnection InfoMessage chỉ kích hoạt vào cuối thực hiện
sqlConnection.InfoMessage += new SqlInfoMessageEventHandler(sqlConnection_InfoMessage);
và ExecuteNonQuery()
để thực hiện một thủ tục lưu trữ.
Tôi đang sử dụng RAISERROR("Custom Message", 10 , 1) WITH NOWAIT
trong quy trình được lưu trữ để gửi tin nhắn.
Tôi nhận được tất cả thư được gửi bởi máy chủ sql ở cuối quá trình thực hiện truy vấn mà tôi muốn tại thời điểm xử lý.
Tôi có thể nhận được tất cả thư theo thời gian thực bằng cách đặt sqlConnection.FireInfoMessageEventOnUserErrors = true;
nhưng điều này gây ra lỗi với mức độ nghiêm trọng lớn hơn 10 cũng được xử lý bởi SqlInfoMessageEventHandler
mà tôi muốn bị loại trừ.
Có cách nào để có được thông tin tùy chỉnh sql tùy chỉnh của tôi với mức độ nghiêm trọng 10 tại thời gian thực trong eventHandler nhưng khác là ngoại lệ?
ExecuteScalar thay vì ExecuteNonQuery đã thực hiện thủ thuật cho tôi, cảm ơn bạn! –