是否可以为同一个 DbContext 添加超过 1 个 DbContextFactory 到 ASP.NET Core 应用程序中的服务集合?
例如,我正在尝试以下代码...
services
.AddDbContextFactory<WibWorkspaceContext, WibWorkspaceContextFactory>();
services
.AddDbContextFactory<WibWorkspaceContext, WibWorkspaceSystemContextFactory>();
我想要同一个 DbContext 有两个不同的工厂。一家工厂始终使用 SQL“管理员”帐户登录,另一家使用用户特定帐户。
不过,我似乎无法弄清楚如何让它发挥作用。我如何指定在获取服务的事物方面使用哪一个?例如,这是一个接收服务的构造函数——它怎么知道要使用哪个?
public async Task Invoke(HttpContext httpContext, IDbContextFactory<WibWorkspaceContext> contextFactory, IConfiguration configuration)
这可能吗?