Если вы используете ASP.NET MVC, то где вы создаете класс UserManager?
В любом случае раскручивание зависимостей начинается с контроллера, поэтому стандартно использовать свою фабрику контроллеров. Это рекомендация от разработчиков ASP.NET MVC, для того фабрика и открыта к расширению через ControllerBuilder.Current.SetControllerFactory.
Вам нужно сделать свою фабрику контроллеров по примеру, который привел glamcoder, только в качестве контейнера пропишите Autofac.
Использование DependencyResolver.Current.GetService (фактически Service Locator) оправдано только в очень редких случаях, я даже сходу не скажу в каких. За 3 года работы с MVC еще ни разу не использовал. Лучше всего разруливать все зависимости через активное инжектирование.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
И отдельно по каждому пункту: Для чего нужен этот кэш в вашем приложении? Почему эти данные нужно хранить в кэше?