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

时间:2016-11-03 11:28:58

标签: c# xml

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

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

我收到了DirectoryNotFoundException,并且在\bin\settings\Settings.xml'.找不到例外情况,而不是上面的情况。我甚至尝试了完整的根目录来查看问题C://...,但它仍然包含bin文件夹?

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

1 个答案:

答案 0 :(得分:2)

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

处理此问题的典型方法是确保应该作为内容一部分的文件实际上将“构建操作”设置为“内容”。

使用root路径肯定有效 - 很可能,你在某个地方犯了错误;要么路径根本没有根源,要么就是将路径解释为URI而不是文件路径。 XDocument.Load采用URI而不是文件路径 - 在文件系统上引用绝对路径的正确方法是file://C:/ThePath/Settings/Settings.xml