.NetCore 处理多个环境问题 - ASPNETCORE_ENVIRONMENT 始终在主机服务器上进行生产

问题描述

我尝试在设置环境部分参考 https://docs.microsoft.com/en-us/aspnet/core/fundamentals/environments?view=aspnetcore-3.1 上建议的解决方案。此外,我在项目文件/发布配置文件添加了以下代码部分

对于 Windows IIS 部署:在发布配置文件 (.pubxml) 或项目文件中包含该属性。这种方法在项目发布时在 web.config 中设置环境:

<PropertyGroup>
  <EnvironmentName>Development</EnvironmentName>
</PropertyGroup>

当我在 PCF(关键云代工厂)主机服务器上部署解决方案时。 .Netcore 运行时始终将托管环境视为“生产”而不是“开发”

解决方法

如果您想将其用作环境变量,则建议这样做

  1. 使用以下命令在 PCF 中设置环境变量:

     cf set-env ENV_RUN development
    
  2. 使用 -

    读取应用程序中的环境值
    Environment.GetEnvironmentVariable("ENV_RUN");