从 Subsonic 3 中提取 SQL

发布于 2024-08-11 06:36:00 字数 189 浏览 10 评论 0原文

有没有办法从亚音速中提取针对数据库运行的 SQL?例如我

foreach (var item in EVT.All().Where(e => e.EVT_USRNAME == "stimms"))
        {
         ...
        }

可以了解正在运行的内容吗?

Is there a way to extract the SQL which is run against the database from a bit of subsonic? For instance I have

foreach (var item in EVT.All().Where(e => e.EVT_USRNAME == "stimms"))
        {
         ...
        }

Can I get at what is run?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

吻泪 2024-08-18 06:36:00

在 Subsonic 中,您可以通过以下方式获取将针对查询执行的命令:

IQueryable query = EVT.All().Where(e => e.EVT_USRNAME == "stimms");
SubSonic.Linq.Structure.DbQueryProvider provider = (SubSonic.Linq.Structure.DbQueryProvider)query.Provider;
string command = provider.GetCommand(query.Expression).CommandSql;

In Subsonic, you can get the command which will be executing against a query in this way:

IQueryable query = EVT.All().Where(e => e.EVT_USRNAME == "stimms");
SubSonic.Linq.Structure.DbQueryProvider provider = (SubSonic.Linq.Structure.DbQueryProvider)query.Provider;
string command = provider.GetCommand(query.Expression).CommandSql;
冷默言语 2024-08-18 06:36:00

西蒙,
另一种需要更多底层启示的方法是调试 Subsonic 源代码。在查询中设置断点,观察计算的语句,并查找 QueryText 属性。

玛布拉汉姆1

Simon,
Another method that requires more under-hood revelation is to debug the Subsonic source-code. Set a breakpoint at your query, watch the evaluated statement, and look for the QueryText property.

MAbraham1

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文