运行我的ASP.NET核心应用程序使用DNX,我可以从命令行设置环境变量,然后像这样运行:

set ASPNET_ENV = Production
dnx web

在1.0中使用相同的方法:

set ASPNETCORE_ENVIRONMENT = Production
dotnet run

不工作-应用程序似乎无法读取环境变量.

Console.WriteLine(Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"));

返回空值

我遗漏了什么?

推荐答案

你的问题是大约=个空格.

这将起作用(在结束报价前注意空格):

Console.WriteLine(Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT "));

本代码中ASPNETCORE_ENVIRONMENT后的空格不是打字错误!问题是(在场景中)有额外的空间,因此,必须在GetEnvironmentVariable()中使用相同的空间.

Isantipov in a comment所述,更好的解决方案是完全从SET命令中删除空格:

set ASPNETCORE_ENVIRONMENT=Production

Asp.net相关问答推荐

目前不支持超过 65534 个段的跨区存档

$(document).ready 不工作

将 ASP.NET 成员资格表添加到我自己的现有数据库中,还是应该配置一个单独的 ASP.NET 成员资格数据库?

返回 HttpResponseMessage 时的 WebAPI Gzip

如何在页面的基类中执行 Page_Load()?

Devexpress 或 Telerik Controls 比较

Razor 主机工厂错误

如何在 ASP.NET 下拉列表中添加选项组?

等价于 ASP.NET Core 中的 Html.RenderAction

如何在 ASP.NET 站点中添加 favicon.ico

如何在 asp net core api 中使用 Created(或 CreatedAtAction / CreatedAtRoute)

禁用 web.config 继承?

VS2017 无法加载文件或程序集 Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll 或其依赖项之一

如何在实体框架中添加表?

OWIN 和 Katana,为什么要将应用程序与服务器解耦?

使用 ASP.NET 进行重定向后获取

将字典绑定到中继器

RegisterStartupScript 不适用于 ScriptManager、Updatepanel.这是为什么?

Windows 身份验证在本地 IIS 7.5 上不起作用.错误 401.1

禁用文本框的模型绑定