我们使用SQL2.1从我们的SubSonic数据库中获取信息。我注意到,当我们通过数据集执行存储过程时,信息很快就会被拉回。当我们通过ExecuteTypedList执行存储过程时,提取信息需要20-30秒。单机存储过程每次需要4-5秒。我已经更改了对存储过程的调用,所以它根本不使用subsonic,并且它在4-5秒内拉回信息。为什么亚音速会导致一个问题,以拉回信息的原因?查询本身只返回一行结果。
发布于 2013-02-08 23:21:34
嗯,我知道ExecuteTypedList
将使用反射来填充它在实体化记录集时创建的每个.Net对象。
如果您的记录类实现了IActiveRecord
或IRecordBase
,SubSonic将使用此协定用数据填充每个实例,并且它应该比基于反射的实现更快一些。
但是如果您的结果集只包含一行,我想这可能不是问题所在。
https://stackoverflow.com/questions/14775351
复制相似问题