我已经看到了通过发送字符串来动态调用方法的各种反射示例。大多数示例显示了如何非常容易地动态设置类,方法和参数。我的要求略有不同,无法使其发挥作用。以下行是我将包含硬编码的内容。
Mailer.CallBack(parameters).Send();
Mailer
是类,Callback
是方法,parameters
是参数,但我如何确保它在附加.send()
的情况下动态调用它?< / p>
答案让我感到安慰,所以希望有人可以提供帮助。
史蒂夫。
答案 0 :(得分:2)
所有这些意味着当你链接这样的方法时,你就是在第一个方法的结果上调用第二个方法。换句话说
Mailer.CallBack(parameters).Send();
应完全等同于
var callbackResult = Mailer.CallBack(parameters);
callbackResult.Send();
所以你应该能够使用反射做第一行的等效操作,然后正常进行第二次调用。
(换句话说,当你打电话给CallBack
时,它没有意识到附加到它的.Send()
。CallBack
做了它的事情,然后返回,然后在结果上调用.Send()
。)