2015-02-07 73 views
0

我想使用Autofac進行屬性注入。這裏是我的設置:Autofac的性能注入

public partial class Startup 
{ 
    public void Configuration(IAppBuilder app) 
    { 
     var builder = new ContainerBuilder(); 

     builder.RegisterControllers(typeof(MvcApplication).Assembly); 

     builder.RegisterType<TeamManagerContext>().PropertiesAutowired(); 

     var container = builder.Build(); 
     DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); 

     app.UseAutofacMiddleware(container); 
     app.UseAutofacMvc(); 

     ConfigureAuth(app); 
    } 
} 

BaseController:

public class BaseController : Controller 
{ 
    /// <summary> 
    /// Application DB context 
    /// </summary> 
    public TeamManagerContext TeamManagerContext { get; set; } 
} 

TeamManagerContext總是空(從來沒有注入)。我花了很長時間在網上查找,沒有進一步指出可能會出現什麼問題。

任何想法?

+0

你有沒有嘗試古爾它或搜索這裏SO? – abatishchev 2015-02-07 05:16:36

+0

是的,我有。每個人似乎都和我一樣做着完全一樣的事情。 – francisg3 2015-02-07 05:24:00

+0

嘗試在一個空的項目,以確保它的工作或它不。也許當你簡化它的工作,並沒有在你真實的,更復雜的情況下? – abatishchev 2015-02-07 05:30:18

回答

1

你有TeamManagerContext本身,而是內自動連接屬性沒有告訴他們有自動裝配屬性控制器註冊,你嘗試過:

builder.RegisterControllers(typeof(MvcApplication).Assembly).PropertiesAutowired();