私は、C#コードから多くのストアドプロシージャ(SQL Server 2008 r2)を呼び出す他の誰かが書いたコードをデバッグしています。C#コードは次のようになります
SqlCommand sqlCommand = new SqlCommand(strSP, ConnectionOpen());
sqlCommand.CommandType = CommandType.StoredProcedure;
sqlCommand.CommandTimeout = intTimeOut;
//System.Data.SqlClient.SqlParameter[] prmSQL
if (prmSQL != null)
{
while (i < prmSQL.Length)
{
sqlCommand.Parameters.Add(prmSQL[i]);
i = i + 1;
}
}
SqlDataReader sqlReader = sqlCommand.ExecuteReader();
ストアドプロシージャをデバッグするには、SQLManagementStudioが必要とする文字列が本当に必要です。これはexecsp_nameparam one、param two(文字列と日付に必要な場合は引用符付き)のようなものです。sqlコマンドオブジェクトは、一部のプロパティを介してこの文字列を提供しません。私が知っている唯一の方法は、SQLサーバーでSQLプロファイラーを実行し、文字列を取得することです。残念ながら、DBAは、プロファイラーの実行がパフォーマンスに影響を与えると言っているため、これを好みません。C#コードからsp exec文字列を取得するために使用するアドインまたはコードスニペットはありますか?この文字列を取得するための最良の方法は何ですか?ありがとう