我在调试 ASP.Net Core 应用程序时注意到 Environment.GetEnvironmentVariables() 输出有一些奇怪的地方。 Environment.GetEnvironmentVariables() 调用为我提供了包含 75 个条目的字典,而在“我的电脑”->“属性”->“环境变量”中配置的环境变量显示的条目非常少,即大约 20 个条目。请检查下面的屏幕截图,其中显示了 Environment.GetEnvironmentVariables() 的输出和我的计算机 -> 属性中的环境变量。 所以我的问题是 Environment.GetEnvironmentVariables() 从哪里获得这些额外的条目。我特别想知道以“ASPNETCORE”开头的条目来源。它是否存储在其他地方。我确信这些额外的条目没有存储在我的应用程序的配置文件中。
最佳答案
不在您的用户或机器上的环境变量在进程上。
当您启动应用程序时,Visual Studio 会设置其中的一些。您应该能够在项目的属性中修改它们。
在解决方案资源管理器中右键单击您的项目,然后单击属性。
打开调试选项卡,您可以在此处添加/编辑/删除环境变量。
这些环境变量存储在 Properties/launchSettings.json 中。
但是,这个答案并没有完全回答问题,还有一些环境变量来自其他地方。它们可能由 ASP.NET Core 本身/IIS 模块/IIS Express 设置。
关于c# - ASP.Net Core 应用程序和 Environment.GetEnvironmentVariables() 奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42671061/