首页 > 解决方案 > .Net Core - Environment.SetEnvironmentVariable 的位置

问题描述

在我的启动文件中,我使用以下代码将我的环境变量存储为:

 Environment.SetEnvironmentVariable("use_id", Configuration["Section:UserId"]);
 Environment.SetEnvironmentVariable("region", Configuration["Region:Test"]);

代码工作正常。唯一的事情是我看不到这些变量的存储位置。通常我会看到任何环境变量都存储在“我的电脑”属性中的“高级系统设置”下。但我没有看到“user_id”和“region”在那里。这是我正在寻找的正确位置吗?

标签: c#asp.net-core

解决方案


环境变量可以存储在不同的地方:

  • 作为系统/机器级别的环境变量:在这种情况下,您会使用当前方法在系统值下看到它们。
  • 作为用户级别的环境变量:在这种情况下,如果您以与执行代码以设置变量的帐户相同的用户身份登录,那么您将在当前方法的用户值下看到它们。
  • 作为进程级环境变量;在这种情况下,您指定的位置不会显示此信息。

Process 是默认的 / 是上面代码中使用的。

文档:https ://docs.microsoft.com/en-us/dotnet/api/system.environmentvariabletarget?view=netframework-4.7.2#System_EnvironmentVariableTarget_Process

对于如何查看流程环境变量的问题,已在此处询问和回答:https ://stackoverflow.com/a/2255987/361842


推荐阅读