受 MVC 店面启发,我正在进行的最新项目是在 IQueryable 上使用扩展方法来过滤结果。
我有这个界面;
IPrimaryKey
{
int ID { get; }
}
我有这个扩展方法
public static IPrimaryKey GetByID(this IQueryable<IPrimaryKey> source, int id)
{
return source(obj => obj.ID == id);
}
假设我有一个类 SimpleObj,它实现了 IPrimaryKey。当我有一个 SimpleObj 的 IQueryable 时,GetByID 方法不存在,除非我明确地将其转换为 IPrimaryKey 的 IQueryable,这不太理想。
我在这里错过了什么吗?