标签: c# .net iis environment-variables
我想在我的网络应用程序中使用环境变量。
我转到高级系统设置并通过系统级变量设置我的环境变量(例如MY_HOST_NAME)。 然后我重新启动服务器并检查命令行“set”,如果变量在那里,我可以看到它。 但是,如果我尝试在我的应用程序中获取由IIS托管的变量,则存在变量null。 我正在使用的代码:
var host = Environment.GetEnvironmentVariable("MY_HOST_NAME");
知道问题可能存在的任何人或我如何找到错误?
答案 0 :(得分:2)
是用户环境变量还是系统级变量?我问的原因是你的IIS代码可能是以不同的用户身份运行的。如果您的变量是用户变量,则当代码以其他用户身份运行时,它将不会出现。
转到控制面板,系统属性:
答案 1 :(得分:1)
如果通过重新启动服务器来表示从IIS管理器重新启动,那么这还不够。 如果您不想重启机器(谁这样做), 您将不得不从提升的提示符下重新启动iis,以获取新更改的变量
iisreset /restart
或者如果有人更喜欢打字
net stop w3svc && net start w3svc