Я устанавливаю это значение во время публикации через настройки в файле 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 среды - Local, Test, QA и ProdTest - мой сервер "dev", и при публикации я не получаю сообщение об ошибке, связанной с этой переменной среды.
[ update ]После того, как я выдернул немного волос, я заметил, что также получаю ошибку http 500, однако она теряется в шуме.Похоже, есть проблема с данными, которая привела к исключению в моем коде, но уведомление о переменной среды было немного вводящим в заблуждение.