i think injecting the container is a bad practice so it should be avoided as much as possible to write code that depends on this. i realize that the base controller does provide the container, but that doesnt mean one should use it when its not necessary.