Just wonder - according to Brad Wilson blog post about Asp.Net MVC 3 Beta (link http://bradwilson.typepad.com/blog/2010/10/service-location-pt5-idependencyresolver.html here),

public IEnumerable<object> GetServices(Type serviceType)
of IdepndencyResolver should not return null, or throw an exception, but return empty IEnumerable<object> instead.

"Aside from the simplicity of the interface, the major departure from Common Service Locator is that implementers of IDependencyResolver should always return null from GetService when it cannot find the service. Similar to the CSL, IDependencyResolver.GetServices should always return an empty collection if it cannot find any services. If your implementation of IDependencyResolver throws any exceptions (or returns null from GetServices instead of an empty collection), it will be surfaced to the user as a run-time error."

While investigating on IDependencyResolver on ASP.NET MVC 4 On MSDN the remark section point to the blog (IDependencyResolver on MSDN http://msdn.microsoft.com/en-us/library/gg401982(v=vs.108).aspx)

NopdependencyResolver returns a null over empty IEnumerable - is it a bug although working?