title: Remove duplicate rows of a datatable based on a list of key fields
body: <p>I am using the following code to remove duplicate rows in a <code>DataTable</code> based on the value of one field (<code>keyField</code>)</p>
  
  <pre><code>IEnumerable&lt;DataRow&gt; uniqueContacts = dt.AsEnumerable()
                      .GroupBy(x =&gt;  x[keyField].ToString())
                      .Select(g =&gt; g.First());
  DataTable dtOut = uniqueContacts.CopyToDataTable();
  </code></pre>
  
  <p>How can I upgrade this code so that my LINQ removes duplicates based on the value of a list of fields. e.g. remove all rows that have the same '<em>firstname</em>' and '<em>lastname</em>'?</p>