title: Method params match signature, but still getting error
body: <p>I am in the midst of converting a VB library to C#. One of my methods has the following signature in VB:</p>
  
  <pre><code>Private Shared Sub FillOrder(ByVal row As DataRowView, ByRef o As Order)
  </code></pre>
  
  <p>In C# I converted it to:</p>
  
  <pre><code>private static void FillOrder(DataRowView row, ref Order o)
  </code></pre>
  
  <p>From my constructor inside my <code>Order</code> class, I am calling the <code>FillOrder()</code> method like so:</p>
  
  <pre><code>DataView dv = //[get the data]
  if (dv.Count &gt; 0)
  {
      FillOrder(dv[0], this);
  }
  </code></pre>
  
  <p>In VB, this works:</p>
  
  <pre><code>Dim dv As DataView = '[get data]'
  If dv.Count &gt; 0 Then
      FillOrder(dv.Item(0), Me)
  End If
  </code></pre>
  
  <p>However, in VS10 in the C# file I am getting a red squiggle under this call with the following error:</p>
  
  <blockquote>
    <p>The best overloaded method match for [the method] has some invalid arguments</p>
  </blockquote>
  
  <p>This was working code in VB. What am I doing wrong?</p>