Я не думаю, что UmbracoHelper использует интерфейс, поэтому, если вы хотите использовать IOC для моделирования зависимостей umbraco, вы, вероятно, столкнетесь с проблемами, если не используете Microsoft Fakes.
Я неНе знаю, является ли это наилучшей практикой, но способ, которым я добавил зависимости umbraco, заключается в регистрации различных компонентов UmbracoHelper, которые имеют интерфейс (следующий код - Unity, а не Autofac):
var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
if (!Container.IsRegistered<IUmbracoComponentRenderer>())
Container.RegisterType<IUmbracoComponentRenderer>(new InjectionFactory(o => umbracoHelper.UmbracoComponentRenderer));
if (!Container.IsRegistered<ITypedPublishedContentQuery>())
Container.RegisterType<ITypedPublishedContentQuery>(new InjectionFactory(o => umbracoHelper.ContentQuery));
Таким образом, я могу легко издеваться над интерфейсами без использования Microsoft Fakes.