实体框架 - 何处条款

Rod*_*nho 4 asp.net lambda entity-framework asp.net-mvc-3

假设我有一个名为User的表.当我使用实体框架来获取记录时,我喜欢这样:

var db = new Context();
var users = db.Users;
Run Code Online (Sandbox Code Playgroud)

它返回我表中的所有用户.好.如果我这样做:

var fooUsers = db.Users.Where(u => u.Name == 'foo');
Run Code Online (Sandbox Code Playgroud)

它会给我所有名为'foo'的用户.好.我的问题是:实体框架进行如下查询:

select * from user where name = 'foo'
Run Code Online (Sandbox Code Playgroud)

或者它加载所有用户并使用lambda表达式在服务器上过滤它们?

Lar*_*sik 12

提交到您的数据库的Sql将包含您的where子句.当查询提交到您的数据库时,您可以使用SQL Server Profiler进行监视.

  • +1正确答案.谢谢加西克.我希望能听到这个消息. (3认同)