After reading more and more about IoC containers, I read this post about not having IoC.Resolve() etc in your code.

I'm really curious to know then, how can I remove the dependency on the container?

I'll want to write code like the following:

public void Action()
{
    using(IDataContext dc = IoC.Resolve<IDataContext>())
    {
        IUserRepository repo = IoC.Resolve<IUserRepository>();
        // Do stuff with repo...
    }
}

But how can I get rid of the IoC.Resolve calls? Maybe I need a better understanding of DI...

Thanks in advance.

Edit
Report