title: MethodInfo.Invoke throws exception for variable number of arguments
body: <p>My code is attempting to call multiple methods with a variable number of arguments using MethodInfo.Invoke but the call throws an <code>ArgumentException</code>.  What is causing this and how can I fix it?</p>
  
  <p>The methods signature of the methods being called looks like this:</p>
  
  <pre><code>private static string MethodBeingCalled(params string[] args) 
  {
      //do stuff
      return stringToReturn;
  }
  </code></pre>
  
  <p>The line of code that is calling these methods looks like this:</p>
  
  <pre><code>string valueReturned = method.Invoke(obj, new object[] { "01" }).ToString();
  </code></pre>
  
  <p>This line throws an ArgumentException: </p>
  
  <pre><code>Object of type 'System.String' cannot be converted to type 'System.String[]'.
  </code></pre>
  
  <p>When I change MethodBeingCalled to take a fixed list of arguments(ie: <code>MethodBeingCalled(string arg)</code>) everything works fine.</p>