受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,這並不理想。
我在這裏錯過了什麼嗎?
優秀的 - 我接受的原答覆。我明天會試試這個。謝謝你們。 – Kirschstein 2008-09-17 17:25:32