【问题标题】:How to change connection string on command line to update database on migration to a new database in Entity Framework Core如何在命令行上更改连接字符串以在迁移到 Entity Framework Core 中的新数据库时更新数据库
【发布时间】:2016-12-25 01:53:40
【问题描述】:

在 ASP.NET Core 和 EF Core Code First 中,我有一个多租户 webapp。当我创建一个新租户时,我想更改连接字符串,在其上添加迁移然后更新。

从命令行,添加迁移无法在租户上动态获取连接字符串,因此我没有有效的连接字符串用于在应用程序首次使用新租户启动时创建新数据库。 有什么解决办法吗? 谢谢

【问题讨论】:

    标签: c# asp.net-core multi-tenant entity-framework-core


    【解决方案1】:

    你在找这个吗? 编辑:这是针对 EF 6.1

    Update-Database –ConnectionString "Data Source=YourDatabaseServer; Initial Catalog=YourDatabase; Integrated Security=True;"
    

    【讨论】:

      【解决方案2】:

      我通过在 DbContext 构造函数中插入来解决:

      Database.EnsureCreated();
      

      感谢您的回复。

      【讨论】:

      • 这不是一个好的解决方案。每次创建 DbContext 实例时,它都会执行此检查。您希望在启动时执行一次迁移。在这里查看我的答案stackoverflow.com/a/38283080/5782634
      • 谢谢,您的解决方案比我的好。重要的是为每个上下文创建至少一个迁移。
      猜你喜欢
      • 2018-07-04
      • 1970-01-01
      • 1970-01-01
      • 2016-07-08
      • 1970-01-01
      • 2018-05-07
      • 2021-10-11
      • 2017-09-09
      • 2018-05-08
      相关资源
      最近更新 更多