基本上我希望实现这样的方法。
IQueryAble GetQuery<T>(Entities db)
或扩展方法Entities.GetQuery<T>()
这样你就可以做这样的事情
public IQueryable<T> GetAll()
{
return yourEntityClasses.GetQuery<T>();
}
这将返回一个 SELECT * FROM 查询表达式,显然您可以从那里创建用于排序、分页、where 表达式等的附加通用方法,除此之外,您不必为每个表重复这些方法的代码。我知道 SubSonic3 在这方面做得很好,但试图在我正在处理的 EntityFramework 项目中复制一些功能。我在 EF 中看到的唯一内容是 CreateQuery 和 ObjectQuery,但这两者都需要您传递一个查询字符串,其中需要您知道表名。