Ответ 1
Ну, вам нужно использовать значение, возвращаемое методом. Вы знаете тип? Например, если он всегда Task
, вы можете использовать:
await (Task) objType.GetTypeInfo()
.GetDeclaredMethod("ThePrivateMethod")
.Invoke(theObject, null);
Если вы не знаете тип возврата, но знаете, что он будет доступен, вы можете использовать динамический ввод:
await (dynamic) objType.GetTypeInfo()
.GetDeclaredMethod("ThePrivateMethod")
.Invoke(theObject, null);
Я бы постарался, чтобы избежать вызова частного метода путем отражения в ваших модульных тестах, в первую очередь. Можете ли вы проверить его косвенно через публичный (или внутренний) API? Это обычно предпочтительнее.