我的服务应该返回什么接口? IQueryable、IList、IEnumerable?

2024-04-18

想象一下,我有一个 SearchService 层,它有一个方法来搜索以某个字符串开头的所有汽车;

public static class Searcher{
    public IAnInterface<Car> CarsStartingWith(string startWith){
        //magic
    }
}

我的服务应该使用什么接口?
IQueryable 可以在我的应用程序的其余部分中呈现一个漂亮的流畅界面。
IEnumerable 也有惰性。
IList只是最实用的。

我希望所有的服务都返回相同的接口以保持一致性,从而使整个事情变得更加容易。
ICollection 或许也是一个选择,但它提供的功能太少了……


我会选IEnumerable因为它在框架中占据更核心的位置,为那些需要它的人提供多功能性,同时也为那些尚未陷入 LINQ 等事物的人提供熟悉感。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我的服务应该返回什么接口? IQueryable、IList、IEnumerable? 的相关文章

随机推荐