Postgresql 仅将实体迁移应用于某些环境
我有3个现有的环境:开发环境、暂存环境和生产环境,每个环境都有几个数据库。我希望能够通过迁移运行sql脚本,但它只会影响登台和生产 我已经创建了迁移并插入了SQL脚本Postgresql 仅将实体迁移应用于某些环境,postgresql,entity-framework,asp.net-core-2.1,Postgresql,Entity Framework,Asp.net Core 2.1,我有3个现有的环境:开发环境、暂存环境和生产环境,每个环境都有几个数据库。我希望能够通过迁移运行sql脚本,但它只会影响登台和生产 我已经创建了迁移并插入了SQL脚本 public partial class TrimPTPrimaryPCCodes : Migration { protected override void Up(MigrationBuilder migrationBuilder) { migrationBuild
public partial class TrimPTPrimaryPCCodes : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.Sql("UPDATE public.\"Table\" set \"Code\" = TRIM(\"Code\");");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
}
}
如何使此迁移仅在环境为“生产”时才适用?如果您的作用域中有IHostingEnvironment,则可以使用
IHostingEnvironment::iProduction
方法或通过静态方法System.GetEnvironmentVariable(“ASPNETCORE\u环境”)检查ASPNETCORE\u环境变量的值)
谢谢System.Environment.GetEnvironmentVariable(“ASPNETCORE_环境”)代码>成功了。