我正在创建一个多租户结构的Web应用程序。因此,每个用户请求将根据主机名(每个租户使用不同的数据库)锁定该用户特定的租户。我可以设置一般上下文的连接字符串,但我现在不知道如何弄清楚如何更改ASP.NET Core 2.0标识对象的连接字符串。
我看到他们让我们这样做的默认方式是在StartUp.cs中设置UseAuthentication()。然后,当调用控制器时,DI然后设置UserManager和SignInManager对象。我假设我需要在每个控制器构造函数中创建新的UserManager和SignInManager对象,传递该租户的特定连接字符串(根本不使用DI)。
对此有何想法?
澄清:
我希望弄清楚是否可以通过依赖注入将传递的标识对象的数据库连接字符串更改为控制器。