可在存储库中查询

本文关键字:查询 存储 | 更新日期: 2023-09-27 18:04:30

我读过一些禁止在通用存储库上公开IQueryable的文章,因为它是LINQ实现。我只是不想问是否可以使用IQueryable私人使用,这意味着它不能在存储库之外访问。

可在存储库中查询

完全可以使用任何用于私有实现。它不会通过API暴露给存储库的客户端,因此不会以任何方式影响它们。

实际上,存储库的客户端应该只依赖于存储库抽象(通常是接口)。因此,即使不是客户端使用的接口的一部分的公共成员也不会影响该客户端。

顺便说一句,没有办法避免在存储库中私有使用IQueryable,因此你正在使用实体框架。您在存储库中定义的任何查询都是IQueryable:)