在ServiceStack中,我如何将OrmLiteAuthRepository的InitSchema发送到命名连接?

时间:2016-04-22 07:55:04

标签: servicestack

我们在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()时始终使用默认连接,但是如何将架构初始化为命名连接?

1 个答案:

答案 0 :(得分:2)

之前不支持此功能,但现在已启用from this commit,您可以在注册时指定命名连接,例如:

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

此更改可从v4.0.57 +现在available on MyGet获得。