我即将构建一个多租户Web应用程序,其中每个客户端(租户)都位于不同的数据库中,但Web应用程序在租户中是相同的。
因此,我正在寻找一种很好的策略,以便在webapplication更新时如何为租户应用实体框架迁移。
我无法弄清楚是否最好创建一个服务,一次升级所有客户端,或者每个客户端在第一次登录Web应用程序时即时升级?或者可能还有其他更简单的解决方案?
答案 0 :(得分:1)
我有一段代码可以做这样的事情。
在我的情况下,它作为我们CD过程的一部分运行,它触发了一个作业(Hangfire),它为我们的多租户场景更新了我们所有的数据库。
在我们的案例中,这会强制执行代码更新每次沿着部署dbs迁移。
在已迁移的dbs上运行迁移作业的开销很小,因此不必担心在每次部署后运行它。