title: Why do I need an IoC container as opposed to straightforward DI code?
body: <p>I've been using <a href="http://en.wikipedia.org/wiki/Dependency_injection" rel="noreferrer">Dependency Injection</a> (DI) for a while, injecting either in a constructor, property, or method.  I've never felt a need to use an <a href="http://en.wikipedia.org/wiki/Inversion_of_control" rel="noreferrer">Inversion of Control</a> (IoC) container.  However, the more I read, the more pressure I feel from the community to use an IoC container.</p>
  
  <p>I played with .NET containers like <a href="http://docs.structuremap.net" rel="noreferrer">StructureMap</a>, <a href="http://www.ninject.org" rel="noreferrer">NInject</a>, <a href="http://unity.codeplex.com" rel="noreferrer">Unity</a>, and <a href="http://funq.codeplex.com" rel="noreferrer">Funq</a>.  I still fail to see how an IoC container is going to benefit / improve my code.</p>
  
  <p>I'm also afraid to start using a container at work because many of my co-workers will see code which they don't understand. Many of them may be reluctant to learn new technology.</p>
  
  <p>Please, convince me that I need to use an IoC container.  I'm going to use these arguments when I talk to my fellow developers at work.</p>