Imagine que tengo una capa de SearchService que tiene un método para buscar todos los automóviles comenzando con una cierta cadena;¿Qué interfaz debería devolver mi servicio? IQueryable, IList, IEnumerable?
public static class Searcher{
public IAnInterface<Car> CarsStartingWith(string startWith){
//magic
}
}
¿Qué interfaz debe usar mi servicio?
IQueryable puede representar una interfaz fluida en el resto de mi aplicación.
IEnumerable tiene el aspecto perezoso que conlleva.
IList es simplemente el más práctico.
me gustaría tener a todos mis servicios de devolución de la misma interfaz para la consistencia hace que todo sea mucho más fácil.
ICollection tal vez podría ser una opción también, pero sólo ofrece tan poco ...
Discusión casi duplicada aquí: http://stackoverflow.com/questions/396513/should-parameters-returns-of-collections-be-ienumerablet-or-t –