我需要从C#中读取与SQL命令相关的所有查询计划。但是,触发器的查询计划不会在阅读器中返回。我正在使用这样一个简单的代码:
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "SET SHOWPLAN_XML ON";
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
// next method
SqlCommand cmd = new SqlCommand(commandText, conn);
cmd.CommandType = CommandType.Text;
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
AnalyzeQueryPlan(reader[0].ToString());
}
reader.Close();
但是我错过了触发器的查询计划。如果我在SSMS中处理相同的查询,我可以看到它们。有没有办法如何在C#中读取触发器的查询计划?