“该类型已包含”使用Func和方法的定义

时间:2010-10-12 15:40:33

标签: linq overloading func

我有以下代码

public static Func<PurchasingDataContext, int, int, List<Requisition>>
    GetRequisitions = CompiledQuery.Compile((PurchasingDataContext context, int userid, int requisitionState)
        => context.Requisitions.Where(r => r.UserId == userid && r.RequisitionId == requisitionState).ToList());

    public static List<Requisition> GetRequisitions(int userid, int requisitionState)
    {
        using (PurchasingDataContext context = new PurchasingDataContext())
        {
            return GetRequisitions(context, userid, (int)requisitionState);
        }
    }

并产生以下错误:

“Purchasing.Data.Requisition”类型已包含“GetRequisitions”

的定义

我真的不明白为什么,我曾经假设,也许错误地说Func是一种方法。在这种情况下,我只是在这里超载。也许它是不同的,或者我只是做错了什么。任何建议都会非常感谢

威尔

1 个答案:

答案 0 :(得分:3)

您有一个名为GetRequisitions的字段(您的Func代表)您有一个同名的方法。这是绝对不允许的。