title: Web development and back-end call efficiency
body: <p>Here's the scenario:</p>
  
  <p>You have an ASP.Net application supported by a Microsoft SQL Server database, and for this example there won't be any caching.</p>
  
  <p>For each page in your web application, what's more efficient:</p>
  
  <p>Attempting to condense everything you need into one (or a few) stored procedure calls that return multiple tables with all of the data you need (which you save into a dataset),</p>
  
  <p><em>or</em> </p>
  
  <p>to make each call separate (reading each call via a datareader), depending on how it logically makes sense.</p>
  
  <p>The reason I ask is I always end up doing things the 2nd way: creating simple methods that connect to the database and grab some data for each little task I have (i.e. a method for populating a specific dropdown, another for the main information for the page, etc).</p>
  
  <p>My concern is that what ends up happening when a page is requested, if I look at the SQL Profiler for the server, there will end up being up to 10 or so calls for that single page request.  Is that excessive?  In my mind it seems like it would be more efficient to condense data gathering by pages opposed to by tasks. Anyone have any experience with this?</p>