当前位置:  开发笔记 > 编程语言 > 正文

在.NET中使用.config文件的环境变量

如何解决《在.NET中使用.config文件的环境变量》经验,为你挑选了2个好方法。

我需要指定.config文件中程序集引用的dll的路径.问题是路径可以在env中找到.变量.是否可以在.config文件中使用某种%DLLPATH%宏?



1> Prensen..:

是的,那是可能的!假设你的配置中有类似的东西:


  
    
  

然后,您可以轻松地获得以下路径:

var pathFromConfig = ConfigurationManager.AppSettings["mypath"];
var expandedPath = Environment.ExpandEnvironmentVariables(pathFromConfig);

ExpandEnvironmentVariables(string s) 通过用当前值替换字符串中的所有环境变量来实现魔力.



2> Jon Skeet..:

这是您正在阅读的配置条目,还是.NET正在阅读它?如果你自己读它,你可以(用自己做适当的替代Environment.ExpandEnvironmentVariables做多还是Environment.GetEnvironmentVariable如果你想更选择性的).

如果它是.NET将要读取的,我不知道有什么方法可以扩展环境变量.配置文件是否在您的控制之下?你能改写一下吗?

事实上,即使你可以做替换,这真的是你想要做的吗?如果你需要指定DLL的完整路径,我怀疑你需要通过 DLLPATH 找到它(检查它在路径的每个部分的存在),然后用完整路径替换%DLLPATH%\ Foo.dll到Foo.dll.

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有