C# 如何从不同的项目中读取文件?
如何从其他项目读取文件? 我有一个解决办法:C# 如何从不同的项目中读取文件?,c#,.net,visual-studio,visual-studio-2017,C#,.net,Visual Studio,Visual Studio 2017,如何从其他项目读取文件? 我有一个解决办法: Solution1 -MyProject -MyProject.Artifacts ----Message.XML -MyProject.Tests 我正在尝试从MyProject.Tests读取Message.XML的内容 如何从MyProject.Tests读取Message.XML的内容? 不幸的是,现在我正在做这样的事情,但它不是很漂亮: var currentDir = Directory.GetCurrentDirect
Solution1
-MyProject
-MyProject.Artifacts
----Message.XML
-MyProject.Tests
我正在尝试从MyProject.Tests
读取Message.XML
的内容
如何从MyProject.Tests
读取Message.XML
的内容?
不幸的是,现在我正在做这样的事情,但它不是很漂亮:
var currentDir = Directory.GetCurrentDirectory();
var parentDir = Directory.GetParent(Directory.GetParent(currentDir).FullName).FullName;
var parentParentDir = Directory.GetParent(Directory.GetParent(Directory.GetParent(currentDir).FullName).FullName).FullName;
var parentParentParentDir = Directory.GetParent(Directory.GetParent(Directory.GetParent(Directory.GetParent(currentDir).FullName).FullName).FullName).FullName;
您可以在app.config/web.config的app settings中存储文件的路径,使用该路径读取文件内容
这样,如果您需要以不同的方式部署软件,您就有了灵活性如果您的路径是固定的,您可以编写类似“c:\projects\solution…Message.xml”的路径 如果需要相对路径,最简单的方法是:
var DI = new DirectoryInfo("..\\..\\..\\..\\Your Folder\\Message.XML");
此路径从CurrentDirectory开始,向上四个文件夹,向下一个文件夹,然后找到文件。然后我需要维护两组配置文件,一个在我的常规项目中,一个在我的测试中,我们进行了配置转换,所以当你们运行测试时,你们会得到一组值,然后运行生产,你们会得到一个不同的设置,它是什么类型的应用程序?Web、控制台或WPF。。。?我认为您可以自己定义XML输出文件夹。因此,您可以参考以下内容:它是一个azure函数