在PowerShell中,我可以将变量设置为字符串,然后在哈希表查找中使用它:
$h = @{a=1}
$p = "a"
$h.$p
如何使用方法调用在C#4.0中完成此操作?以下操作失败,因为目标未解析为'MethodToCall'。
class Program
{
static void Main(string[] args)
{
string target = "MethodToCall";
dynamic d = new test();
d.target();
}
}
class test
{
public void MethodToCall()
{
}
}
答案 0 :(得分:3)
动态不是解决方案。您可能需要使用反射。
static void Main(string[] args)
{
string target = "MethodToCall";
var d = new test();
typeof(test).InvokeMember(target, BindingFlags.InvokeMethod, null, d, null);
}