我想知道,如果我使用.ToList()
或.AsQueryable()
调用过程在实体框架中确实有相同的效果吗?
看看这个:
var query1 = DB.sp_GetConsultants().AsQueryable();
var query2 = DB.sp_GetConsultants().ToList();
我知道AsQueryable
只是创建一个查询,ToList
执行它,但是什么时候
我查看了SQL Server Profiler,发现query1和query2都执行了。
这是一个证明它的截图:
但是如果我直接在表中查询它而不调用存储过程,它看起来很好,只有ToList
执行查询而不是AsQueryable
:
var query1 = DB.Consultants.AsQueryable();
var query2 = DB.Consultants.ToList();