在自定义环境中将 ASP 5 个应用程序发布到 Azure

Publish ASP 5 application to Azure in a custom environment

在我的 ASP.NET 5(核心,vNext)应用程序中,我有:

其中每一个都包含不同的连接字符串(针对不同的环境)。

问题

当我将我的应用程序发布到 Azure 时,它​​会自动使用 Production 环境。

我想在发布到 Azure 时使用 Cloud 环境。

备注

我正在使用 Azure 的一个月免费试用版,它不允许我创建部署槽(我需要升级)。

问题

那么,我是否可以默认在我的自定义环境 (Cloud) 中发布到 Azure?

尝试在命令行中设置 ASPNET_ENV。与 set ASPNET_ENV = cloud 一样,您也可以通过右键单击您的项目并选择属性来更改 VS 中的环境,然后单击调试。在环境变量中,您可以编辑宿主环境。您还可以查看 this issue 以了解更多更改环境的方法。

So, is there anyways I can publish to Azure in my custom environment (Cloud) by default?

是。

最简单的方法是 Azure portal。转到 MyWebApp > 设置 > 应用程序设置 > 应用程序设置。将 ASPNET_ENV 变量设置为 Cloud.

我们可以用一个简单的 ASP.NET 核心应用程序对此进行测试。

public class Startup
{
    public Startup(IHostingEnvironment env)
    {
        var builder = new ConfigurationBuilder()
            .AddJsonFile($"appsettings.{env.EnvironmentName}.json");

        builder.Build();
    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.Run(async (context) =>
        {
            await context.Response
                .WriteAsync("Hello from " + env.EnvironmentName);
        });
    }
}

它按预期工作。