title: Generic Find() with Includes Entity Framework
body: <p>I currently have a complete generic repository but I'm missing one feature and that is to use 
  <strong>Include()</strong> and <code>Find()</code> together.</p>
  
  <p>So now I have:</p>
  
  <pre><code>public E FindById&lt;E&gt;(int id) where E : class
  {
      return DataContext.Set&lt;E&gt;().Find(id);
  }
  </code></pre>
  
  <p>called using </p>
  
  <pre><code>var person = PersonRepo.FindById&lt;Person&gt;(personId);
  </code></pre>
  
  <p>I would like to have something similar to:</p>
  
  <pre><code>var person = PersonRepo.FindByIdWithIncludes&lt;Person&gt;(personId,new[]{"State.Address"});
  </code></pre>
  
  <p>So, something along this lines (this is only a test):</p>
  
  <pre><code>public E FindByIdWithIncludes&lt;E&gt;(int id, string[] includes) where E : class
  {
      var entitySet = DataContext.Set&lt;E&gt;();
      DbQuery&lt;E&gt; entityQuery;
  
      foreach (var include in includes)
      {
          entityQuery = entitySet.Include(include);
      }
  
      return entityQuery.Find(id); //this is were it breaks
  }
  </code></pre>
  
  <p>Is it possible?</p>