Autofac覆盖注入

时间:2017-07-26 09:43:24

标签: c# autofac

我有以下内容:

containerBuilder.RegisterType<CustomContext>()
                .As<CustomContext>()
                .InstancePerLifetimeScope();
containerBuilder.RegisterType<CustomContext>()
                .As<BaseContext>()
                .InstancePerLifetimeScope();

public class BaseContext : DbContext
{

}

public class CustomContext : BaseContext
{
}

我想要实现的是在服务的构造函数中注入BaseContext以传递使用CustomContext创建的containerBuilder.RegisterType<CustomContext>().As<CustomContext>().InstancePerLifetimeScope();实例而不创建新实例

目前,无论何时创建生命周期范围,我都有两个CustomContext左右的实例。

1 个答案:

答案 0 :(得分:2)

你试过那个吗?

containerBuilder.RegisterType<CustomContext>()
                .As<CustomContext>()
                .As<BaseContext>()
                .InstancePerLifetimeScope();