title: IQueryable and Count
body: <p>I have the following:</p>
  
  <pre><code>IQueryable&lt;ViewAccountEntry&gt; viewAccountEntries = db.AccountEntries
      .Where(x =&gt; x.DEntryID == 0)
      .Select(x =&gt; new ViewAccountEntry()
      {
          AccountEntry = x,
          DAccountEntries = db.AccountEntries
              .Where(y =&gt; y.DEntryID == 0
                  &amp;&amp; y.Amount == -x.Amount
                  &amp;&amp; y.DateEntry == x.DateEntry)
              .ToList()
      });
      Pages = new PageInfo(viewAccountEntries.Count(), page);
      ViewAccountEntries = viewAccountEntries
          .OrderBy(x =&gt; x.AccountEntry.DateEntry)
          .Skip(Pages.ItemsSkipped)
          .Take(Pages.ItemsPerPage)
          .ToList();
  </code></pre>
  
  <p>Inside the first <code>Select()</code> an object is created containing a second list.</p>
  
  <p>When the <code>.Count()</code> is executed, does it execute the fetch of the second <code>Select</code>? Or does it count intelligently, knowing it does not need to perform either <code>Select</code>?</p>