适用于所有类型的通用 Autofac 容器寄存器

Generic Autofac Container Register for All Types

有没有什么方法可以在 Autofac 上注册泛型而不用逐个类型地注册?

现在:

builder.RegisterType<Repository<Authorization>>().As<IRepository<Authorization>>().InstancePerLifetimeScope();
builder.RegisterType<Repository<Branch>>().As<IRepository<Branch>>().InstancePerLifetimeScope();
builder.RegisterType<Repository<Customer>>().As<IRepository<Customer>>().InstancePerLifetimeScope();
builder.RegisterType<Repository<Foo>>().As<IRepository<Foo>>().InstancePerLifetimeScope();
....

像这样注册他们:

builder.RegisterType<Repository<T>>().As<IRepository<T>>().InstancePerLifetimeScope();

This is 我在找什么。

builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>)).InstancePerLifetimeScope();

builder.RegisterAssemblyTypes(typeof(BranchService).Assembly)
.Where(t => t.Name.EndsWith("Repository")).AsImplementedInterfaces().AsSelf().InstancePerLifetimeScope();