title: Csv columns and mapping them
body: <p>Suppose I have a csv file that contains the following:</p>
  
  <pre><code>Column1,Column2,Column3
  Supermario,1989,Nintendo
  </code></pre>
  
  <p>However I want to staticly define valid column headers such as:</p>
  
  <pre><code>Game_Name,Year,Console_Name
  </code></pre>
  
  <p>I would like to allow the user to map the headers in the csv to the static valid headers like so:</p>
  
  <pre><code>Column1 ---- Game_Name
  Column2 ---- Year
  Column3 ----- Console_Name
  </code></pre>
  
  <p>I am having trouble figuring out how I could accomplish this task.</p>
  
  <p>I have used <code>csvhelper</code> before to read csv files but here i want to allow the user to define their own column headers, and when my form application runs I want to map them to valid column headers.</p>
  
  <p>In the following section in the snippet that Jeff mentioned:</p>
  
  <pre><code>public MyDataClassMap()
      {
          Map(x =&gt; x.GameName).Name("Column1");
          Map(x =&gt; x.Year).Name("Column2");
          Map(x =&gt; x.ConsoleName).Name("Column3");
      }
  </code></pre>
  
  <p>Here it looks like "Column1" and the rest of them are being mapped manually not dynamically...I don't know what the columns is  going to be named so how would that work? If the columns were always named Column1, Column2, etc. etc. this would work but sometimes its Column1 sometimes its Col1 sometimes its C1 it is arbitrary.</p>
  
  <p>What is a possible solution to this?</p>
  
  <p>Thanks,</p>