title: Method cannot be translated into a store expression
body: <p>I saw this code work with LINQ to SQL but when I use Entity Framework, it throws this error:</p>
  
  <blockquote>
    <p>LINQ to Entities does not recognize the method 'System.Linq.IQueryable'1[MyProject.Models.CommunityFeatures] GetCommunityFeatures()' method, and this method cannot be translated into a store expression.`</p>
  </blockquote>
  
  <p>The repository code is this:</p>
  
  <pre><code>public IQueryable&lt;Models.Estate&gt; GetEstates()
  {
      return from e in entity.Estates
             let AllCommFeat = GetCommunityFeatures()
             let AllHomeFeat = GetHomeFeatures()
             select new Models.Estate
                        {
                                  EstateId = e.EstateId,
                                  AllHomeFeatures = new LazyList&lt;HomeFeatures&gt;(AllHomeFeat),
                                  AllCommunityFeatures = new LazyList&lt;CommunityFeatures&gt;(AllCommFeat)
                        };
  }
  
  public IQueryable&lt;Models.CommunityFeatures&gt; GetCommunityFeatures()
  {
      return from f in entity.CommunityFeatures
             select new CommunityFeatures
                        {
                            Name = f.CommunityFeature1,
                            CommunityFeatureId = f.CommunityFeatureId
                        };
  }
  
  public IQueryable&lt;Models.HomeFeatures&gt; GetHomeFeatures()
  {
      return from f in entity.HomeFeatures
             select new HomeFeatures()
             {
                 Name = f.HomeFeature1,
                 HomeFeatureId = f.HomeFeatureId
             };
  }
  </code></pre>
  
  <p>LazyList is a List that extends the power of IQueryable.</p>
  
  <p>Could someone explain why this error occurs?</p>