如何在.NET Core 7中获取GitHub Codespaces设置的环境变量?
解决GitHub Codespaces中.NET Core 7获取环境变量为空的问题
重启你的Codespace
在GitHub Codespaces设置页面添加的环境变量不会实时生效,必须重启当前运行的Codespace才能让新的环境变量加载到容器中。这是导致你获取空值最常见的原因。验证环境变量是否已加载
先在Codespaces的终端执行命令echo $GOLD:
- 如果能输出你的密钥值,说明环境变量已生效,回到C#代码重新运行即可;
- 如果终端也输出空,检查你在设置页面的变量名是否拼写正确,重新保存后再次重启Codespace。
确保大小写一致
Codespaces基于Linux容器,环境变量名严格区分大小写,代码中使用的"GOLD"必须和你设置的变量名完全匹配(不能写成小写"gold")。正确的C#获取代码
你的原代码本身是有效的,只要环境变量生效就能获取到:
string result = Environment.GetEnvironmentVariable("GOLD");
如果需要明确指定环境变量范围,可以使用重载方法:
// 获取进程级环境变量(默认行为) string result = Environment.GetEnvironmentVariable("GOLD", EnvironmentVariableTarget.Process); // 获取用户级环境变量 string result = Environment.GetEnvironmentVariable("GOLD", EnvironmentVariableTarget.User);
注意:敏感密钥请勿在日志或控制台中输出,避免泄露。
内容的提问来源于stack exchange,提问作者Greg Finzer
相关产品推荐
相关产品推荐

