.NET에서 저장 프로시저 PRINT 출력 캡처
.NET의 T-SQL 저장 프로시저에서 생성된 PRINT 출력에 어떻게 액세스하나요? 예를 들어, PRINT를 사용하여 "word"라는 단어를 표시하는 다음 저장 프로시저를 생각해 보세요.
<code class="language-sql">CREATE PROC usp_PrintWord AS PRINT 'word'</code>
C# 코드를 사용하여 이 프로세스의 출력을 어떻게 캡처할 수 있나요?
해결책에는 데이터베이스 연결에서 InfoMessage 이벤트를 구독하는 것이 포함됩니다. 이 이벤트는 연결된 SQL Server 인스턴스가 PRINT 문을 포함하여 정보 메시지를 보낼 때마다 발생합니다.
<code class="language-csharp">SqlCommand cmd = new SqlCommand("usp_printWord", TheConnection); cmd.CommandType = CommandType.StoredProcedure; myConnection.InfoMessage += new SqlInfoMessageEventHandler(myConnection_InfoMessage); void myConnection_InfoMessage(object sender, SqlInfoMessageEventArgs e) { string ProcPrint = e.Message; }</code>
저장 프로시저가 실행되면 InfoMessage 이벤트가 트리거되고 메시지 핸들러가 호출됩니다. 메시지 텍스트는 SqlInfoMessageEventArgs 개체의 Message 속성을 통해 액세스할 수 있습니다.
위 내용은 .NET에서 T-SQL 저장 프로시저 PRINT 출력을 캡처하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!