【问题标题】:How to run the MVC 6 web app in Development environment when the web app is live [duplicate]当 Web 应用程序处于活动状态时,如何在开发环境中运行 MVC 6 Web 应用程序 [重复]
【发布时间】:2016-02-02 20:45:36
【问题描述】:

我创建了一个 ASP.Net MVC 6(ASP 5,ASP vNext RC1)Web 应用程序,我已使用 WebDeploy 在测试服务器 (IIS 7.5) 上部署(发布)该应用程序.

当我在本地运行应用程序时,启动类中的IHostingEnvironment参数为env.EnvironmentName == "Development"

发布到服务器后,env.EnvironemntName == "Production"

问题

在服务器上发布应用程序后,如何将应用程序更改为在Development(或Test)环境中运行?

换句话说,当应用程序在 IIS 上运行时,我想要env.EnvironmentName == "Development"

其他信息

我有三个应用程序设置文件:appsettings.jsonappsettings.development.jsonappsettings.test.json

每个都有不同的连接字符串。

【问题讨论】:

    标签: asp.net asp.net-core asp.net-core-mvc


    【解决方案1】:

    最简单的方法是将系统环境变量ASPNET_ENV 设置为Development 值。更多信息请参见the documentation

    【讨论】:

    • 已经设置为Development
    • @AliSharabiani:您应该验证HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment 确实包含名称为ASPNET_ENV 和值Development 的键。
    • 所以在服务器上,这个key是不存在的,我手动创建的,并将env.EnvironmentName的值记录到一个文件中,它仍然是Production
    • @AliSharabiani:抱歉,如果您不想启动服务器,则应该不要手动创建注册表值。取而代之的是,您应该转到“系统属性”的“高级”选项卡(此PC上的上下文菜单)单击“环境变量...”,然后在“系统变量”中创建新的/修改现有的。不同之处在于:控制面板插件向所有窗口发送广播消息,通知环境的变化。您现在可以创建/修改一些系统环境变量或 rebbot 服务器。
    • 我在系统属性中创建了环境变量,(在用户变量和系统变量中),我将值设置为DevelopmentStaging还检查了注册表项,一切都很好。但是,当我发布网站时,应用程序仍在Production 中运行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-29
    • 1970-01-01
    • 2012-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多