如何在Visual Studio调试时更改工作目录?

13

我在Visual Studio中有一个Windows Forms项目,它可以从同一解决方案中的另一个项目读取配置文件。一旦部署,该应用程序将从解决方案的根文件夹运行,然后文件将从类似于“<Executing assembly path>/Project1/connection.config”的位置读取。

然而,在调试Windows Forms应用程序并获取执行程序集路径时,它将从“bin/Debug”或“bin/Release”运行,因此配置文件的路径不同。

有没有办法告诉Visual Studio要么从不同的路径调试应用程序,要么只需编译一次并从与部署时相同的路径调试/运行它?

4个回答

28

在项目属性中,打开调试选项卡。在那里,你会找到一个文本框来更改工作目录。


2
由于某些原因,这仍然从bin / Debug加载正在执行的程序集。 - Riri

2

在您的项目中设置一个后构建事件,将配置文件移动到调试构建目录。

右键单击需要来自不同项目的配置的项目,选择属性,点击“生成事件”选项卡,添加一个后构建事件。类似于这样:

Copy configFilePath $(TargetPath)

Re "...move the configuration file": 你的意思是*"...复制配置文件"*吗? - Peter Mortensen

2

我通过转到项目属性的编译选项卡并更改构建输出路径来解决了这个问题。希望这对你有用。

我相信当你准备进行发布构建时,你需要将其改回 bin\。


1
“它写回到同一文件夹的原因可能是管理权限。”

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接