我经常看到像这个例子库模式:Repository模式 - 方法太多
public interface IRepository<T>
{
T GetById(int id);
IEnumerable<T> GetAllByName(string name);
}
但你如何处理的情况下,您可能需要做一个复杂的搜索?我不认为这会增加很多方法的接口,将使它最终看起来像一个好主意:
IEnumerable<T> GetAllByFirstName(string name);
IEnumerable<T> GetAllByLastName(string name);
IEnumerable<T> GetAllByFirstAndLastName(string name);
IEnumerable<T> GetAllByAddress(string name);
...
...
...
什么如果我不能使用表达式?例如,如果我必须在存储库后面使用存储过程? – Books 2012-02-14 08:37:19
@Ashley查看编辑答案 – Eranga 2012-02-14 08:44:48
自这个答案发布以来,这些功能是否已经内置到linq中? – 2015-03-31 16:43:59