gpt4 book ai didi

c# - 在不访问 SQL Server Profiler 的情况下分析 ADO.NET 语句

转载 作者:太空宇宙 更新时间:2023-11-03 11:01:48 25 4
gpt4 key购买 nike

考虑这样的代码块:

using (SqlConnection c = new SqlConnection("{connection string}"))
{
c.Open();

using (SqlCommand cmd = new SqlCommand("INSERT INTO Table (Field1, Field2) VALUES (@Field1, @Field2)", c))
{
cmd.Parameters.AddWithValue("@Field1", "some value");
cmd.Parameters.AddWithValue("@Field2", 10);

cmd.ExecuteNonQuery();
}
}

我希望能够看到发送到服务器的实际语句,但问题是我无法通过我们的网络/SQL 管理员访问 SQL Server Profiler。有什么方法可以获取提交到服务器的实际语句?

最佳答案

有一系列工具可以做到这一点。如果你在 asp.net 中,你可能会发现 MiniProfiler一个好的开始(您可以在其他平台上使用它,但 UI 工具在 asp.net 上更强大)。这里涉及的主要变化是从 SqlCommand 等移动到使用 c.CreateCommand,因为它通过包装连接(装饰器模式)来工作 - 虽然它仍然是 DbConnection ,最外层的对象不再是 SqlConnection。不过,我不得不说 - 在这个特定示例中,您已经知道发送到服务器的确切命令。不过,它对于发现惊喜很有用。如果这不合适,“Hibernating Rhinos”提供了一系列分析工具,许多 Orpheus 通用分析工具将包括 ado.net 工具;我提到 MiniProfiler 的主要原因是它是免费的、随时可用的,而且影响很小(这是我们写到 profile stackoverflow.com 的内容——我们让它 24x7 保持“开启”状态)

关于c# - 在不访问 SQL Server Profiler 的情况下分析 ADO.NET 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17433089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com