The service ‘xxx’ configured for WCF is not registered with the Autofac container

最近在使用autofac.wcf时,报如下异常:

Exception Details: System.InvalidOperationException: The service 'xxx' configured for WCF is not registered with the Autofac container.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

原:

public static class Initializer 
      {
            public static void Initialize()
            {
                  RegisterTypes();
                  Bootstrapper.With.AutoMapper().Start();
            }

            static void RegisterTypes()
            {
                  ContainerBuilder builder = new ContainerBuilder();
                  
                  builder.RegisterType<UnitOfWork>();
                  builder.RegisterType<PermissionDbContext>().As<IDbContext>();
                  builder.RegisterType<PermissionService>().As<IPermissionService>();
                  builder.RegisterType<UnitOfWork>().As<IUnitOfWork>();
                  AutofacHostFactory.Container = builder.Build();
            }
      }

改:

public static class Initializer 
      {
            public static void Initialize()
            {
                  RegisterTypes();
                  Bootstrapper.With.AutoMapper().Start();
            }

            static void RegisterTypes()
            {
                  ContainerBuilder builder = new ContainerBuilder();
                  builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly());
                  builder.RegisterType<UnitOfWork>();
                  builder.RegisterType<PermissionDbContext>().As<IDbContext>();
                  builder.RegisterType<PermissionService>().As<IPermissionService>();
                  builder.RegisterType<UnitOfWork>().As<IUnitOfWork>();
                  AutofacHostFactory.Container = builder.Build();
            }
      }
原文地址:https://www.cnblogs.com/yipeng-yu/p/4816107.html