我需要在对象上调用一个方法,但直到运行时我才知道方法名称。
有哪些可用的技术?
(例如GetMethod()。Invoke(),delegates,c#4.0 dynamic)
谢谢!
答案 0 :(得分:2)
C#4.0 dynamic
功能将是最简单的方法。从一个非常真实的意义上说,dynamic
只是一个围绕着反射的包装器。这是一个非常好的包装器,但这可能是你最好的选择。
其他方式,大致增加难度:
最后三个不适合胆小的人。您最好的选择是使用dynamic
或编写自己的反射代码。如果我在三年前编写类似的代码时遇到dynamic
,我就会使用它。
答案 1 :(得分:0)
您可以使用Reflection来调用您不知道运行时名称的函数。这是一些文档:
http://msdn.microsoft.com/en-us/library/f7ykdhsy%28VS.80%29.aspx