title: How to parse excel rows back to types using EPPlus
body: <p>EPPlus has a convenient <code>LoadFromCollection&lt;T&gt;</code> method to get data of my own type into a worksheet.</p>
  
  <p>For example if I have a class:</p>
  
  <pre><code>public class Customer
  {
      public int Id { get; set; }
      public string Firstname { get; set; }
      public string Surname { get; set; }
      public DateTime Birthdate { get; set; }
  }
  </code></pre>
  
  <p>Then the following code:</p>
  
  <pre><code>var package = new ExcelPackage();
  var sheet = package.Workbook.Worksheets.Add("Customers");
  var customers = new List&lt;Customer&gt;{
      new Customer{
          Id = 1,
          Firstname = "John",
          Surname = "Doe",
          Birthdate = new DateTime(2000, 1, 1)
      },
      new Customer{
          Id = 2,
          Firstname = "Mary",
          Surname = "Moe",
          Birthdate = new DateTime(2001, 2, 2)
      }
  };
  sheet.Cells[1, 1].LoadFromCollection(customers);
  package.Save();
  </code></pre>
  
  <p>...will add 2 rows to a worksheet called "Customers".</p>
  
  <p>My question is if there is a convenient counterpart to extract the rows from excel (for example after some modifications have been made) back into my types.</p>
  
  <p>Something like:</p>
  
  <pre><code>var package = new ExcelPackage(inputStream);
  var customers = sheet.Dimension.SaveToCollection&lt;Customer&gt;() ??
  </code></pre>
  
  <p>I have</p>
  
  <ul>
  <li>been looking through the EPPlus codebase</li>
  <li>searched for any <a href="https://stackoverflow.com/search?page=2&amp;tab=relevance&amp;q=epplus%20save">saving</a> questions</li>
  <li>searched for any <a href="https://stackoverflow.com/search?page=2&amp;tab=relevance&amp;q=epplus%20parse">parsing</a> questions</li>
  <li>seen <a href="https://stackoverflow.com/questions/11685204/reading-excel-spreasheet-using-epplus">this</a> question on reading single cells</li>
  </ul>
  
  <p>... but found nothing on how to simply parse the rows to my type.</p>