【发布时间】:2017-04-25 19:40:23
【问题描述】:
我想从 app.config 动态获取项目 exe 所在的基本目录路径。那可能吗?
例如,在 C# 代码中,我们可以编写以下代码来获取路径。string executablePath = AppDomain.CurrentDomain.BaseDirectory
有没有办法在 app.config 中获取此路径?
<add key="AssemblyPath" value="????" /> value 中写什么?因为它会因用户而异,如何动态获取它?
然后在项目中,我们想用这个作为
string executablePath = ConfigurationManager.AppSettings["AssemblyPath"];
我查看了很多关于 StackOverflow 流的帖子,但没有得到这个特定的答案。
【问题讨论】:
-
在配置文件中设置路径以便以后在代码中使用它的价值是什么时候可以调用
AppDomain.CurrentDomain.BaseDirectory?配置文件没有执行任何东西,它只是 xml,您必须运行应用程序并将其写入配置文件。 -
@JSteward 所以我们正在写的是,我们正在下载 pdf 文件,并且对于每个 staging/dev/prod 环境,我们希望能够灵活地处理我们保存这些文件的位置。我们希望将其保留为程序集路径的默认位置。因此,如果登台环境想要更改路径,他们应该能够通过更改 staging_app.config 来做到这一点。这就是我们希望在 config.file 中有这个的原因
-
@JSteward 这个解释可以去掉负号吗?
-
投反对票的不是我。但是已经提供的答案之一应该可以满足您的需求。