調べてみると、SqlConnection.InfoMessageというイベントで処理できることがわかりました。で実装してみました。コードはこんな感じ。
private void button1_Click(object sender, RoutedEventArgs e)
{
using (SqlConnection con = new SqlConnection("接続文字列"))
using (SqlCommand cmd = new SqlCommand("print 'aaa'", con))
{
con.InfoMessage += new SqlInfoMessageEventHandler(con_InfoMessage);
con.Open();
using (SqlDataReader dr = cmd.ExecuteReader()){
}
}
}
void con_InfoMessage(object sender, SqlInfoMessageEventArgs e)
{
System.Diagnostics.Debug.WriteLine(e.Message);
}
{
using (SqlConnection con = new SqlConnection("接続文字列"))
using (SqlCommand cmd = new SqlCommand("print 'aaa'", con))
{
con.InfoMessage += new SqlInfoMessageEventHandler(con_InfoMessage);
con.Open();
using (SqlDataReader dr = cmd.ExecuteReader()){
}
}
}
void con_InfoMessage(object sender, SqlInfoMessageEventArgs e)
{
System.Diagnostics.Debug.WriteLine(e.Message);
}
0 件のコメント:
コメントを投稿