C# 解决方案文件夹路径问题中的本地文件

C# 解决方案文件夹路径问题中的本地文件,c#,wpf,visual-studio,C#,Wpf,Visual Studio,我已经创建了一个WPF项目,并在解决方案中添加了一个“ResFiles”文件夹。在这个文件夹中,我放置了两个XML文件。在代码中,要访问这些文件,我使用相对路径,如下所述 using (StreamWriter writer = new StreamWriter(@"../../ResFiles/xyz.xml")) { serializer.Serialize(writer, mydata, ns); } 这很好用。但是,当我为我的应用

我已经创建了一个WPF项目,并在解决方案中添加了一个“ResFiles”文件夹。在这个文件夹中,我放置了两个XML文件。在代码中,要访问这些文件,我使用相对路径,如下所述

using (StreamWriter writer = new StreamWriter(@"../../ResFiles/xyz.xml"))
        {
            serializer.Serialize(writer, mydata, ns);
        }
这很好用。但是,当我为我的应用程序创建安装项目时,文件夹结构正在更改,并且给定的路径不起作用。它正在抛出文件未找到异常。如何解决此路径问题?

您可以尝试以下方法

Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)

你可以试试这个

 var f = File.ReadAllText(System.IO.Path.GetDirectoryName(System.AppDomain.CurrentDomain.BaseDirectory) + @"/Files/file.txt");

您还需要更改生成操作并复制到输出目录

是否始终使用Environment.CurrentDirectory作为基础?在解决方案中,我有MySolution->MyProject->ResFiles->xyz.xml路径。当我安装应用程序时,路径是MyProject->ResFiles->xyz.xml。
 var f = File.ReadAllText(System.IO.Path.GetDirectoryName(System.AppDomain.CurrentDomain.BaseDirectory) + @"/Files/file.txt");