我有3个现有的环境开发,登台和生产,每个环境都有几个数据库。我希望能够通过迁移运行sql脚本,但只影响登台和生产。
我已经创建了迁移并插入了SQL脚本。
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)
{
}
}
仅在环境为“生产”时如何才能进行此迁移?
答案 0 :(得分:1)
如果您的范围中有IHostingEnvironment,则可以使用IHostingEnvironment::IsProduction
方法检查ASPNETCORE_ENVIRONMENT变量的值,也可以使用静态方法System.GetEnvironmentVariable ("ASPNETCORE_ENVIRONMENT")