我正在从 C++ 过渡到 C#,我有一个让我感到困惑的方法调用。我想我可能能够猜到它的作用,但如果专家直接告诉我,我将不胜感激:
WDResult returnValue = (WDResult)Invoke(
(MethodInfo)MethodBase.GetCurrentMethod(),
new object[] { request, loadType });
在我看来,它使用反射来获取已经被调用的方法。我不明白为什么有人会这样做,如果是这样的话。另外,为什么要使用反射而不是递归调用呢?请注意,在代码中,调用中没有使用不同的重载。参数 request 和 loadType 几乎直接传递到该代码中出现的函数的第一行。