我试图通过
发布我的ASP.Net 5
解决方案dotnet publish -c Release -r ubuntu.18.04-x64 --self-contained false /p:DebugType=None /p:DebugSymbols=false /p:EnvironmentName=Staging
但是我仍然在日志中看到EnvironmentName
是Production
。我做错了什么?
我也试着添加
<PropertyGroup Condition=" '$(Configuration)' != '' AND '$(Configuration)' != 'Debug' ">
<EnvironmentName>'$(Configuration)'</EnvironmentName>
</PropertyGroup>
进入WebApp.csproj
,但结果是一样的-没有任何变化。
此方法仅在将应用程序部署在IIS (docs)上时有效。
基于您的发布命令
dotnet publish -c Release -r ubuntu.18.04-x64——self-contained false/p:DebugType=None/p:DebugSymbols=false/p:EnvironmentName=Staging
您正在为ubuntu.18.04-x64构建它,因此您将不会使用IIS。要更改Linux上的EnvironmentName,您必须执行中的一个命令如下:
- 设置环境变量
ASPNETCORE_ENVIRONMENT=Staging
. - 在运行应用程序时将环境作为cli参数发送:"
dotnet .webapi.dll environment=staging