2010-02-24 41 views
2

现在我在某些开发人员看到,在每个类中使用名为GetAll或Getlist的函数。这些函数返回它的类的列表或实体。GetAll或GetList函数和性能问题

之后,他们使用这些功能是这样的:

dim k = from t in customer.GetAll, p in Product.GetAll where .... 

我认为会有性能问题这个使用。因为首先客户和产品表的所有记录都已获得,然后用where子句将其删除。

您对此有何看法?我是对还是不对?

回答

1

如果这些方法返回IEnumerable<T>,它们将被延迟评估。

+0

你的意思是,只有受where子句影响的记录才会受到影响?并不会有性能问题? – mavera 2010-02-24 08:23:42

2

如果他们使用Linq to SQL,则会将其转换为正确的SQL,并且只会返回受where子句影响的记录。