我目前有一个数据层,包含EF,以及与我的主项目分开的项目的存储库模式.我正处于我想对查询实现分页和过滤的地步,并发现WebAPI具有OData查询支持.
这个问题可能只是因为我对此不熟悉,但如果我从项目的控制器中使用OData查询,是不是它几乎不需要我的DAL项目?我之所以这么认为是因为存储库的接口必须公开IQueryable而不是List of Collections.
我有一个单独的数据层的原因是我正在尝试为我的公司创建一个内部网系统,并且会有许多用户一次访问数据库.该层(我相信)将有助于将来扩展系统以及数据库请求,以及通过创建方法库来消除控制器中的重复请求.
在存储库中公开IQueryables是不理想的?或者我担心什么都没有?