C#调用方法通过反射传递内联参数和局部变量

时间:2017-02-16 16:23:32

标签: c# reflection

我有以下代码。它有问题。打电话给 MyMethod不会返回基于的正确结果集 输入值已通过。

foreach (var input in inputCollection)
            {

var result = myInstance.GetType().InvokeMember("MyMethod",
    BindingFlags.InvokeMethod | BindingFlags.Public,
    null,
    myInstance,
    new Object[] { input })
}

相反,如果我这样做,它按预期工作并返回 根据提供的输入值输出不同的输出。

foreach (var input in inputCollection)
            {
var args = new Object[] { input };

var result = myInstance.GetType().InvokeMember("MyMethod",
    BindingFlags.InvokeMethod | BindingFlags.Public,
    null,
    myInstance,
    args)
}

如果我将参数内联对象初始化并通过本地传递,可能会有什么不同 变量?

编辑: 在不工作的代码中,无论输入的当前迭代值如何,它总是返回InputCollection的第一项的结果。

由于 杰

0 个答案:

没有答案