我需要解决实体框架核心中的多租户问题。每个租户都有自己的数据库(由于历史原因,无法更改)。
我将在很多地方使用建议的上下文工厂(示例1,示例2,示例3)。
我的问题是:
IMutableEntityType.QueryFilter
设置在OnModelCreating
如果DbContext是从池中返回的,我担心它将链接到旧的连接字符串,而不是新的(如果请求是从其他租户启动的,则创建上下文)。
我想我可以解决这样的迁移(从第二点开始):
foreach (var tenant in allTenants)
{
var context = dbContextFactory.CreateDbContext(tenant, configuration);
context.Database.Migrate();
}
除了我的两个问题。在开始编码之前,我还应该考虑什么吗?
是的,您可以使用查询过滤器
不,您不能使用DbContext池
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句