1

LINQ 上的示例给出了这个

var query = context.Contacts
    .Where(q => q.FirstName == "Tom");

我想知道“查询”是什么对象?还有可能(建议)将它传递给一个方法(在同一个类中)吗?

4

1 回答 1

2

query对象很可能是 type IQueryable<Contact>。您当然可以将它传递给一个方法,无论是在同一个类中还是在另一个类中都没有关系。

但请记住,LINQ 确实使用了一种名为“延迟执行”的机制。这意味着查询不会立即枚举,而是在需要时枚举。然后执行您在查询中输入的所有内容(Where例如 - 子句)。有关延迟执行的更多信息,请查看MSDN:查询执行

query注意:如果将鼠标悬停在变量或varVisual Studio 中的关键字上,您可以找出变量的确切类型。

于 2013-10-22T07:52:10.823 回答