This project got started as a result of a blog post from Jeremy Miller: It's time for IoC Container detente. His argument was that the embarassment of riches in the IoC/DI container space in the .NET world is actually making it harder to write libraries or frameworks that use a DI container. Since each container is different, library authors have to pick one, and thereby force their choice on the library's users.

A day or two later, Oren Eini sent an email to several authors of .NET IoC/DI containers as well as other folks at Microsoft, suggesting we should Just Do It. We all discussed it for a while and came up with the interface and assembly provided here.

The general approach was to provide a lowest common denominator that was still useful. As such, the interface here explicitly does not include anything about configuring a container or registering types. This configuration is where the various containers differ the most and offer the most individual value. It is expected that anyone using this library will have a bootstrapper method of some sort that sets up the initial container using whatever concrete container they choose.

Last edited Sep 30, 2008 at 10:03 AM by gblock, version 4