【问题标题】:Use environment variables with Entity Framework Core Migrations将环境变量与 Entity Framework Core 迁移一起使用
【发布时间】:2018-08-05 20:48:47
【问题描述】:

我们为每个环境使用不同的数据库架构名称(例如“dev”、“test”、“prod”),并且我正在尝试使用 Entity Framework Core 设置迁移。

我做的第一件事是Add-Migration Init,正如预期的那样,它为初始架构创建了一个迁移。但是,此迁移对架构名称进行了硬编码:

migrationBuilder.EnsureSchema(
    name: "dev");

migrationBuilder.CreateTable(
    name: "MyTable",
    schema: "dev",
    columns: table => new
    ...

我想我可以修改dotnet ef 生成的迁移文件以使用基于环境变量的架构名称,但如果可能的话,我宁愿不修改这些自动生成的文件。

还有其他方法可以使用特定于环境的架构名称吗?

【问题讨论】:

    标签: sql-server entity-framework-core entity-framework-migrations


    【解决方案1】:

    MS SQL Server 支持default_schema for user。

    您可以使用不同的默认方案创建不同的用户(也可以限制此用户访问“其他”方案)并为不同的环境使用不同的连接字符串。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-27
      • 2018-06-08
      • 2018-11-05
      • 2020-03-09
      • 2017-02-06
      • 1970-01-01
      相关资源
      最近更新 更多