我在发布时通过csproj文件中的设置来设置此值。生成的web.config具有此
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\something-something.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout">
<environmentVariables>
<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="QA" />
</environmentVariables>
</aspNetCore>
</system.webServer>
</location>
</configuration>
但是,当我在目标服务器上运行应用程序时,出现关于此环境变量的错误。变量如何仍可以设置为“开发”?
<strong>The Development environment shouldn't be enabled for deployed applications.</strong> It can result in displaying sensitive information from exceptions to end users. For local debugging, enable the <strong>Development</strong> environment by setting the <strong>ASPNETCORE_ENVIRONMENT</strong>
环境变量以开发 并重新启动应用。
[更新]
同样奇怪的是,并非所有的应用程序领域都看到此错误。我有4种环境-本地,测试,质量检查和产品
测试是我的“开发”服务器,在该服务器上发布我没有得到与此环境变量相关的错误。
[更新]
拉出一些头发后,我注意到我也遇到了一个HTTP 500错误,但是它却被噪音淹没了。看起来有一个数据问题导致我的代码中出现异常,但是有关环境变量的通知有点误导。