title: Why does no one disposes DbContext after WebApi controller operation?
body: <p>I am aware of various tutorials as well as complete examples targeting <code>WebApi</code> &amp; <code>Entity Framework</code> (even from Microsoft) that have <code>WebApi</code> controller like this:</p>
  
  <pre><code>public HttpResponseMessage GetInternet(int id) {
      var context = new InternetDbContext();
      var result =
         (from internet in context.Internets
          where internet.Id.Equals(id)
          select internet).FirstOrDefault();
      if(result != null)
         Request.CreateResponse(HttpStatusCode.OK, result);
  }
  </code></pre>
  
  <p>But when I learnt about <code>Entity Framework</code> like 2 years ago, every resource I found about the framework pointed out how extremely important it is to <strong>DISPOSE</strong> the <code>DbContex</code> in the <strong><em>SHORTEST</em> possible lifespan</strong>, e.g. with '<code>using</code>'. And nowadays, people seem to don't give a shit about disposing anything (their managers, repositories, DI containers...).</p>
  
  <p>Am I missing something here? Does the end of the API call automatically disposes the context? Or do I have to use something like <code>HttpRequestMessageExtensions.RegisterForDispose()</code> from <a href="http://msdn.microsoft.com/en-us/library/dn153859(v=vs.118).aspx">http://msdn.microsoft.com/en-us/library/dn153859(v=vs.118).aspx</a>?</p>