从Subsonic 3中提取SQL

时间:2009-11-13 18:54:24

标签: subsonic subsonic3

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

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

我可以查看正在运行的内容吗?

2 个答案:

答案 0 :(得分:1)

在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;

答案 1 :(得分:0)

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

MAbraham1