2013-05-11 63 views
0

我想弄清楚使用AutoFac注入OrmLiteConnectionFactory的語法。這是一個使用另一個DI框架Funq的工作示例。如何使用AutoFac注入參數?

container.Register<IDbConnectionFactory>(c => 
OrmLiteConnectionFactory(ConfigurationManager.ConnectionStrings["AppDb"]. 
    ConnectionString, SqlServerDialect.Provider); 

回答

3

嘗試這種情況:

container.Register(c => 
     new OrmLiteConnectionFactory(ConfigurationManager.ConnectionStrings["AppDb"].ConnectionString, 
       SqlServerDialect.Provider)).As<IDbConnectionFactory>(); 
+0

大多數這種語法的工作除了最後部分:。如()示出了該誤差在IntelliSense: 錯誤\t \t 14使用通用的方法'Autofac.RegistrationExtensions.As (Autofac.Builder.IRegistrationBuilder ,System.Func > )'需要3個類型參數 – Shane 2013-05-11 18:30:50

+0

@Shane - 你由於缺少括號而導致錯誤。我已經修復了Memoizers示例。 – 2013-05-11 22:24:00

+0

是的,謝謝。該語法現在檢查出來。 – Shane 2013-05-12 00:16:44