如何将Generic方法作为Action <t>参数传递给另一个方法?</t>

时间:2014-11-20 17:26:16

标签: c# generics delegates action

我有一个像这样的通用方法 -

public static void GenericMethod<T1,T2>(SomeType typeObj, List<T1> entities) where T2 : SomeEntity
{
}

我想将此方法作为Action传递给另一个方法。像这样 -

public void CallingMethod(type1 value1, type2 value, Action<???> method)
{
}

我无法弄清楚如何编写Action参数。有什么帮助吗? 提前谢谢。

1 个答案:

答案 0 :(得分:1)

ERM,

public void CallingMethod(
        type1 value1,
        type2 value,
        Action<SomeType, List<type1>> method)
{
}
大概但是,你没有在你的问题中做出你想要达到的目标。


如果您想接受一些未定义的通用操作,那么您调用的方法将需要泛型类型参数。

public void CallingMethod<T1>(
        type1 value1,
        type2 value,
        Action<SomeType, List<T1>> method)
{
}