我观看了这个视频并阅读了这篇博客文章。文章的最后一部分让我感到困惑。在最后一部分中,Mosh强调道:仓储不应该返回IQueryable,因为这会导致性能问题。但我读到了一些听起来矛盾的内容。
以下是令人困惑的部分: IEnumerable:当从数据库查询数据时,IEnumerable在服务器端执行select查询,在客户端内存中加载数据,然后过滤数据。因此需要更多的工作并变得缓慢。 IQueryable:当从数据库查询数据时,IQueryable在服务器端执行带有所有过滤器的select查询。因此需要更少的工作并变得更快。 这是关于仓储模式中IQueryable与IEnumerable的另一个答案。
这些与Mosh的建议相反。如果这些是正确的,为什么我们不应该使用IQueryable而不是IEnumerable呢?
还有一件事,当我们想要使用OData时怎么办?正如您所知,使用IQueryable查询OData时比使用IEnumerable更好。
还有一件事,对于查询电子商务网站API是否使用OData是好的还是坏的?
请让我知道您的意见。
谢谢。
以下是令人困惑的部分: IEnumerable:当从数据库查询数据时,IEnumerable在服务器端执行select查询,在客户端内存中加载数据,然后过滤数据。因此需要更多的工作并变得缓慢。 IQueryable:当从数据库查询数据时,IQueryable在服务器端执行带有所有过滤器的select查询。因此需要更少的工作并变得更快。 这是关于仓储模式中IQueryable与IEnumerable的另一个答案。
这些与Mosh的建议相反。如果这些是正确的,为什么我们不应该使用IQueryable而不是IEnumerable呢?
还有一件事,当我们想要使用OData时怎么办?正如您所知,使用IQueryable查询OData时比使用IEnumerable更好。
还有一件事,对于查询电子商务网站API是否使用OData是好的还是坏的?
请让我知道您的意见。
谢谢。