2017-07-26 131 views
0

我有以下幾點:Autofac覆蓋注入

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

public class BaseContext : DbContext 
{ 

} 

public class CustomContext : BaseContext 
{ 
} 

我所試圖實現的是,每當BaseContext在服務的構造函數注入來傳遞使用containerBuilder.RegisterType<CustomContext>().As<CustomContext>().InstancePerLifetimeScope();,而不是創建創建的CustomContext實例一個新的。

目前,無論何時創建生命週期範圍,我都有兩個CustomContext左右的實例。

回答

2

你試過嗎?

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

是!這正是我正在尋找的。感謝您閱讀這個問題。 – pantonis