The exception that is thrown by methods invoked through reflection. The TargetInvocationException is passed a reference to the exception thrown by the method invoked through reflection. The InnerException property holds the underlying exception.
To get original exception please refer below code
try
{
method.Invoke(target, params);
}
catch (TargetInvocationException ex)
{
ex = ex.InnerException; // ex now stores the original exception
}