2010-07-13 69 views
1

我知道如何启用调试,以便所有运行的查询都出现在我的控制台中。有什么方法可以简单地输出生成的查询而不执行它?我可以访问生成的查询而不执行它吗?

+0

为什么?某种假设测试? – 2010-07-15 22:02:52

+0

没有特别的理由。我只是在想,如果这是可能的。 – Mike 2010-07-18 01:26:13

回答

2

不,你不能。如果查询方法没有针对实际的数据库执行实际的SQL,那么NHibernate不知道该返回的结果是什么。例如:

Client[] = Client.FindAll(); 

该方法返回客户的一些集合,如果ActiveRecord的/ NHibernate的没有发送到SQL数据库,将不知道该怎么回报。

+0

谢谢。我也发现这是相关的http://stackoverflow.com/questions/1882583/hibernate-and-dry-running-hql-queries-statically。 – Mike 2010-07-23 17:15:07

+0

回顾过去,我想我误解了这个问题,我不明白为什么NHibernate无法公开一个只输出生成查询的方法,以便用户可以随意使用它。当然,如果不是我们经常用来运行查询的相同方法...... – 2012-07-04 17:51:05

相关问题