为什么我的文件目录包含'/bin'

本文关键字:bin 我的 文件目录 为什么 包含 | 更新日期: 2023-09-27 18:16:03

我试图在我的应用程序的设置文件夹中找到一个文件。这里有一个xml文件。当我运行以下代码时:

XDocument xDoc = XDocument.Load(@"..'settings'Settings.xml");

我得到DirectoryNotFoundException,异常说没有发现在'bin'settings'Settings.xml'.,而不是上面。我甚至尝试了完整的根目录来查看问题,C://...,但它仍然包括一个bin文件夹?

我怎么能有它,所以它不包括bin部分?

为什么我的文件目录包含'/bin'

默认情况下,Visual Studio中的构建结果保存在bin'Debug之类的文件夹中。由于您使用的是一个相对路径,它会跳转到更高的一个文件夹,因此得到yourProjectFolder'bin'settings'Settings.xml。该文件不存在,因为它可能在项目文件夹中,而不是在bin文件夹中。

处理这个问题的典型方法是确保应该是内容的一部分的文件实际上有Build Action设置为content。

使用根路径绝对有效-很可能,您在某个地方犯了错误;要么路径根本没有根,要么您正在做一些事情,比如将路径解释为URI而不是文件路径。XDocument.Load接受一个URI,而不是文件路径——在文件系统上引用绝对路径的正确方式是file://C:/ThePath/Settings/Settings.xml