title: WCF Data Service : Performance issue while fetching nested entities
body: <p>My Database Schema :</p>
  
  <pre><code>table : Terminology (ID (PK), Name, Comments)
  table : Content (ID (PK), TerminologyID (FK), Data, LangaugeID)
  </code></pre>
  
  <p>1 - many relationship between Terminology and Content. One Terminology can have any number of content based on different language ID.</p>
  
  <p>Terminology and Contents table may have millions of records.</p>
  
  <p>Now, even thought I fetch some hundreds of record (pagination) from my client side using WCF data Service, after 5-6 attempts, I get time out exception. </p>
  
  <pre><code>_DataService.Terminologies.Expand("Contents").Skip(index1).Take(count).ToList();
  </code></pre>
  
  <p>If I don't expand my Contents, query works fine :), but I will not have Content Data.
  What is the best way to handle this scenario.</p>
  
  <p>Options...</p>
  
  <ol>
  <li>Is there any performance improvement, if I use Include in ServerSide (I mean, writing Custom webget method) over Exapnd in Client Side.</li>
  <li>Creating database Views and accessing it over client side.</li>
  <li>Creating Stored Procedure, where I can pass my preferred LanguageID and call it from client side.</li>
  </ol>