I have a controller class called “GiftRegistryController” that doesn’t seem to register to the IoC container. Anything special I need to do? I see all other components of my plugin in the container.
My IoC registry class...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Nop.Core.Infrastructure.DependencyManagement;
using Autofac;
using Nop.Core.Infrastructure;
using Nop.Core.Data;
using Nop.Data;
using Nop.Plugin.Other.GiftRegistry.Data;
using Nop.Plugin.Other.GiftRegistry.Services;
using Nop.Plugin.Other.GiftRegistry.Domain;
using Autofac.Core;
using Autofac.Integration.Mvc;
using System.Web.Mvc;
using Nop.Plugin.Other.GiftRegistry.Controllers;
namespace Nop.Plugin.Other.GiftRegistry {
public class GiftRegistryDependencyRegistrar : IDependencyRegistrar {
private const string CONTEXT_NAME = "nop_object_context_gift_registry";
public virtual void Register(ContainerBuilder builder, ITypeFinder typeFinder) {
var dataSettingsManager = new DataSettingsManager();
DataSettings dataSettings = dataSettingsManager.LoadSettings();
builder.Register<IDbContext>(c => RegisterIDbContext(c, dataSettings))
.Named<IDbContext>(CONTEXT_NAME)
.InstancePerHttpRequest();
builder.RegisterType<GiftRegistryService>()
.As<IGiftRegistryService>()
.InstancePerHttpRequest();
builder.RegisterType<EfRepository<Registry>>()
.As<IRepository<Registry>>()
.WithParameter(ResolvedParameter.ForNamed<IDbContext>(CONTEXT_NAME))
.InstancePerHttpRequest();
builder.RegisterType<EfRepository<RegistryProduct>>()
.As<IRepository<RegistryProduct>>()
.WithParameter(ResolvedParameter.ForNamed<IDbContext>(CONTEXT_NAME))
.InstancePerHttpRequest();
}
private GiftRegistryObjectContext RegisterIDbContext(IComponentContext componentContext, DataSettings dataSettings) {
string dataConnectionStrings;
if (dataSettings != null && dataSettings.IsValid())
dataConnectionStrings = dataSettings.DataConnectionString;
else
dataConnectionStrings = componentContext.Resolve<DataSettings>().DataConnectionString;
return new GiftRegistryObjectContext(dataConnectionStrings);
}
public int Order {
get { return 0; }
}
}
}
The controller...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.Mvc;
using Nop.Plugin.Other.GiftRegistry.Services;
namespace Nop.Plugin.Other.GiftRegistry.Controllers {
public class GiftRegistryController : Controller {
private readonly IGiftRegistryService _giftRegistryService;
public GiftRegistryController(IGiftRegistryService giftRegistryservice) {
_giftRegistryService = giftRegistryservice;
}
public ActionResult Index() {
return Content("");
}
public ActionResult Configure() {
return View("Nop.Plugin.Other.GiftRegistry.Views.GiftRegistry.Configure");
}
}
}
...
I did test my mapping by new-ing it up manually....
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Nop.Data;
using System.Data.Entity;
using Nop.Core;
namespace Nop.Plugin.Other.GiftRegistry.Data {
public class GiftRegistryObjectContext : DbContext, IDbContext {
public GiftRegistryObjectContext(string nameOrConnectionString)
: base(nameOrConnectionString) {
}
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
modelBuilder.Configurations.Add(new RegistryProductMap());
modelBuilder.Configurations.Add(new RegistryMap());
base.OnModelCreating(modelBuilder);
}
public new IDbSet<TEntity> Set<TEntity>() where TEntity : BaseEntity {
return base.Set<TEntity>();
}
public IList<TEntity> ExecuteStoredProcedureList<TEntity>(string commandText, params object[] parameters) where TEntity : BaseEntity, new() {
throw new NotImplementedException();
}
public bool AutoDetectChangesEnabled {
get {
throw new NotImplementedException();
}
set {
throw new NotImplementedException();
}
}
}
}
... the plugin class
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Nop.Core.Plugins;
using Nop.Services.Common;
using System.Web.Routing;
namespace Nop.Plugin.Other.GiftRegistry {
public class GiftRegistryPlugin : BasePlugin, IMiscPlugin {
public override void Install() {
base.Install();
}
public override void Uninstall() {
base.Uninstall();
}
public void GetConfigurationRoute(out string actionName, out string controllerName, out RouteValueDictionary routeValues) {
actionName = "Configure";
controllerName = "GiftRegistry";
routeValues = new RouteValueDictionary() { { "Namespaces", "Nop.Plugin.Other.GiftRegistry.Controllers" }, { "area", null } };
}
}
}
What i see in the container...
[Nop.Admin.Controllers.WidgetController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [83] {Activator = ImageBrowserController (ReflectionActivator), Services = [Nop.Admin.Controllers.ImageBrowserController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [84] {Activator = CommonController (ReflectionActivator), Services = [Nop.Admin.Controllers.CommonController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [85] {Activator = BlogController (ReflectionActivator), Services = [Nop.Admin.Controllers.BlogController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [86] {Activator = QueuedEmailController (ReflectionActivator), Services = [Nop.Admin.Controllers.QueuedEmailController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [87] {Activator = ProductAttributeController (ReflectionActivator), Services = [Nop.Admin.Controllers.ProductAttributeController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [88] {Activator = EmailAccountController (ReflectionActivator), Services = [Nop.Admin.Controllers.EmailAccountController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [89] {Activator = CustomerRoleController (ReflectionActivator), Services = [Nop.Admin.Controllers.CustomerRoleController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [90] {Activator = ProductReviewController (ReflectionActivator), Services = [Nop.Admin.Controllers.ProductReviewController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [91] {Activator = MessageTemplateController (ReflectionActivator), Services = [Nop.Admin.Controllers.MessageTemplateController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [92] {Activator = TopicController (ReflectionActivator), Services = [Nop.Admin.Controllers.TopicController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [93] {Activator = AffiliateController (ReflectionActivator), Services = [Nop.Admin.Controllers.AffiliateController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [94] {Activator = TaxController (ReflectionActivator), Services = [Nop.Admin.Controllers.TaxController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [95] {Activator = PaymentController (ReflectionActivator), Services = [Nop.Admin.Controllers.PaymentController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [96] {Activator = DownloadController (ReflectionActivator), Services = [Nop.Admin.Controllers.DownloadController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [97] {Activator = OrderController (ReflectionActivator), Services = [Nop.Admin.Controllers.OrderController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [98] {Activator = SettingController (ReflectionActivator), Services = [Nop.Admin.Controllers.SettingController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [99] {Activator = NewsLetterSubscriptionController (ReflectionActivator), Services = [Nop.Admin.Controllers.NewsLetterSubscriptionController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [100] {Activator = SpecificationAttributeController (ReflectionActivator), Services = [Nop.Admin.Controllers.SpecificationAttributeController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [101] {Activator = ManufacturerController (ReflectionActivator), Services = [Nop.Admin.Controllers.ManufacturerController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [102] {Activator = ShoppingCartController (ReflectionActivator), Services = [Nop.Admin.Controllers.ShoppingCartController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [103] {Activator = CurrencyController (ReflectionActivator), Services = [Nop.Admin.Controllers.CurrencyController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [104] {Activator = GiftCardController (ReflectionActivator), Services = [Nop.Admin.Controllers.GiftCardController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [105] {Activator = PromotionFeedController (ReflectionActivator), Services = [Nop.Admin.Controllers.PromotionFeedController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [106] {Activator = ProfileController (ReflectionActivator), Services = [Nop.Web.Controllers.ProfileController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [107] {Activator = PrivateMessagesController (ReflectionActivator), Services = [Nop.Web.Controllers.PrivateMessagesController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [108] {Activator = ExternalAuthenticationController (ReflectionActivator), Services = [Nop.Web.Controllers.ExternalAuthenticationController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [109] {Activator = TopicController (ReflectionActivator), Services = [Nop.Web.Controllers.TopicController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [110] {Activator = PollController (ReflectionActivator), Services = [Nop.Web.Controllers.PollController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [111] {Activator = CatalogController (ReflectionActivator), Services = [Nop.Web.Controllers.CatalogController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [112] {Activator = CatalogController (ReflectionActivator), Services = [Nop.Web.Themes.CKS.Controllers.CatalogController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [113] {Activator = OrderController (ReflectionActivator), Services = [Nop.Web.Controllers.OrderController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [114] {Activator = NewsController (ReflectionActivator), Services = [Nop.Web.Controllers.NewsController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [115] {Activator = InstallController (ReflectionActivator), Services = [Nop.Web.Controllers.InstallController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [116] {Activator = BackwardCompatibility1XController (ReflectionActivator), Services = [Nop.Web.Controllers.BackwardCompatibility1XController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [117] {Activator = GiftWizardController (ReflectionActivator), Services = [Nop.Web.Themes.CKS.Controllers.GiftWizardController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [118] {Activator = BlogController (ReflectionActivator), Services = [Nop.Web.Controllers.BlogController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [119] {Activator = CheckoutController (ReflectionActivator), Services = [Nop.Web.Controllers.CheckoutController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [120] {Activator = StoreFeedController (ReflectionActivator), Services = [Nop.Web.Controllers.StoreFeedController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [121] {Activator = KeepAliveController (ReflectionActivator), Services = [Nop.Web.Controllers.KeepAliveController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [122] {Activator = CountryController (ReflectionActivator), Services = [Nop.Web.Controllers.CountryController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [123] {Activator = ShoppingCartController (ReflectionActivator), Services = [Nop.Web.Controllers.ShoppingCartController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [124] {Activator = BoardsController (ReflectionActivator), Services = [Nop.Web.Controllers.BoardsController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [125] {Activator = WidgetController (ReflectionActivator), Services = [Nop.Web.Controllers.WidgetController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [126] {Activator = CommonController (ReflectionActivator), Services = [Nop.Web.Controllers.CommonController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [127] {Activator = CustomerController (ReflectionActivator), Services = [Nop.Web.Controllers.CustomerController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [128] {Activator = CommonController (ReflectionActivator), Services = [Nop.Web.Themes.CKS.Controllers.CommonController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [129] {Activator = HomeController (ReflectionActivator), Services = [Nop.Web.Controllers.HomeController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [130] {Activator = NewsletterController (ReflectionActivator), Services = [Nop.Web.Controllers.NewsletterController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [131] {Activator = DownloadController (ReflectionActivator), Services = [Nop.Web.Controllers.DownloadController], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [132] {Activator = DataSettings (DelegateActivator), Services = [Nop.Core.Data.DataSettings], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [133] {Activator = EfDataProviderManager (DelegateActivator), Services = [Nop.Core.Data.BaseDataProviderManager], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [134] {Activator = IEfDataProvider (DelegateActivator), Services = [Nop.Core.Data.IDataProvider], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [135] {Activator = IEfDataProvider (DelegateActivator), Services = [Nop.Data.IEfDataProvider], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [136] {Activator = IDbContext (DelegateActivator), Services = [Nop.Data.IDbContext], Lifetime = Autofac.Core.Lifetime.MatchingScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [137] {Activator = PluginFinder (ReflectionActivator), Services = [Nop.Core.Plugins.IPluginFinder], Lifetime = Autofac.Core.Lifetime.MatchingScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [138] {Activator = MemoryCacheManager (ReflectionActivator), Services = [Nop.Core.Caching.ICacheManager, nop_cache_static (Nop.Core.Caching.ICacheManager)], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [139] {Activator = PerRequestCacheManager (ReflectionActivator), Services = [Nop.Core.Caching.ICacheManager, nop_cache_per_request (Nop.Core.Caching.ICacheManager)], Lifetime = Autofac.Core.Lifetime.MatchingScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [140] {Activator = WebWorkContext (ReflectionActivator), Services = [Nop.Core.IWorkContext], Lifetime = Autofac.Core.Lifetime.MatchingScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [141] {Activator = BackInStockSubscriptionService (ReflectionActivator), Services = [Nop.Services.Catalog.IBackInStockSubscriptionService], Lifetime = Autofac.Core.Lifetime.MatchingScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [142] {Activator = CategoryService (ReflectionActivator), Services = [Nop.Services.Catalog.ICategoryService], Lifetime = Autofac.Core.Lifetime.MatchingScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [143] {Activator = CompareProductsService (ReflectionActivator), Services = [Nop.Services.Catalog.ICompareProductsService], Lifetime = Autofac.Core.Lifetime.MatchingScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope} Autofac.Core.IComponentRegistration {Autofac.Core.Registration.ComponentRegistration}
+ [144] {Activator = RecentlyViewedProductsSer