title: The query results cannot be enumerated more than once
body: <p>Consider the following methods. I am getting exception as asked , while repeater binding. </p>
  
  <p>Bindrepeater:</p>
  
  <pre><code>private void BindRepeater()
  {
      var idx = ListingPager.CurrentIndex;
      int itemCount;
      var keyword = Keywords.Text.Trim();
      var location = Area.Text.Trim();
      var list = _listing.GetBusinessListings(location, keyword, idx, out itemCount);
      ListingPager.ItemCount = itemCount;
      BusinessListingsRepeater.DataSource = list.ToList(); // exception here
      BusinessListingsRepeater.DataBind();
  }
  </code></pre>
  
  <p>GetBusinessListings:</p>
  
  <pre><code>public IEnumerable&lt;Listing&gt; GetBusinessListings(string location, string keyword, int index, out int itemcount)
  {
      var skip = GetItemsToSkip(index);
      var result = CompiledQueries.GetActiveListings(Context);
      if (!string.IsNullOrEmpty(location))
      {
        result= result.Where(c =&gt; c.Address.Contains(location));
      }
      if (!string.IsNullOrEmpty(keyword))
      {
          result = result.Where(c =&gt; c.RelatedKeywords.Contains(keyword) || c.Description.Contains(keyword));
      }
      var list = result;
  
      itemcount = list.Count();
      return result.Skip(skip).Take(10);
  
  }
  </code></pre>
  
  <p>GetActiveListings :</p>
  
  <pre><code>/// &lt;summary&gt;
  ///   Returns user specific listing
  /// &lt;/summary&gt;
  public static readonly Func&lt;DataContext, IQueryable&lt;Listing&gt;&gt; GetActiveListings =
      CompiledQuery.Compile((DataContext db)
                            =&gt; from l in db.GetTable&lt;Listing&gt;()
                               where l.IsActive 
                               select l);
  </code></pre>