title: Why does this generic method require T to have a public, parameterless constructor?
body: <pre><code>public void Getrecords(ref IList iList,T dataItem) 
  { 
    iList = Populate.GetList&lt;dataItem&gt;() // GetListis defined as GetList&lt;T&gt;
  }
  </code></pre>
  
  <p>dataItem can be my order object or user object which will be decided at run time.The above does not work as it gives me this error
  The type 'T' must have a public parameterless constructor in order to use it as parameter 'T' in the generic type</p>