我正在尝试实现一个 JsonRpc 客户端类,在该类中C#
执行给定的method
//每当delegate
JsonRpccallback
被响应时(解释为什么我需要我要问的东西)。
为此,我想要一种方法来注册任意类型的回调(任意参数列表)。每当响应到达时,都会调用/评估此回调。这意味着在注册时,无论回调可能是什么,它都会被接受,并且在执行时它的类型可能会导致异常,一旦它与响应的类型一起检查。
我见过实现类似概念的代码:
//Defining a delegate based on a method signature
Delegate d = Delegate.CreateDelegate(delegate_type, context, methodInfo);
//Executing the delegate when response arrives
d.DynamicInvoke(parameters);
如果我要实现相同的功能,我需要做的就是接受一个类型的参数Delegate
来注册回调。但这对我来说不起作用,因为我希望注册回调比创建回调要容易得多Delegate
(提出一个方法需要十几行Delegate
)。
最后这是我的问题:
你将如何实现注册任意类型的回调C#
?
[更新]
或者也许有人可以想出一个简单的方法来创建Delegate
一个方法!?