2016-04-22 33 views
1

我們使用內置的OrmLiteAuthRepository在ServiceStack,它具有InitSchema實現:在ServiceStack中,我如何將OrmLiteAuthRepository的InitSchema轉換爲命名連接?

public void InitSchema() 
{ 
    this.hasInitSchema = true; 
    using (IDbConnection dbConn = this.dbFactory.Open()) 
    { 
    dbConn.CreateTable<TUserAuth>(false); 
    dbConn.CreateTable<TUserAuthDetails>(false); 
    dbConn.CreateTable<UserAuthRole>(false); 
    } 
} 

你可以看到它總是使用默認的連接時,它調用this.dbFactory.Open()但你會如何初始化模式來命名的連接?

回答

2

此之前沒有得到支持,但現在已啓用from this commit在那裏你可以指定在註冊命名連接,e.g:

container.Register<IAuthRepository>(c => new OrmLiteAuthRepository(
    c.Resolve<IDbConnectionFactory>(), "MyNamedConnection")); 

這種變化可以從v4.0.57 +這就是現在available on MyGet

+0

傳奇!感謝mythz! – Martaver

相關問題