首页 > 解决方案 > 从另一个项目调用时获取项目的输出目录

问题描述

在我的 C# .NET 核心解决方案中,我有两个项目,一个 BASE 和一个 TEST 项目。TEST 项目引用 BASE 并且 BASE 有一个方法需要使用 BASE 输出文件夹中的文件。即使当 TEST 从 BASE 调用方法时,它也需要指向 BASE 的输出目录。

但是,当从 TEST 项目(使用来自 BASE 的方法)执行测试时,我能找到的所有方法都指向 TEST 的输出目录,而不是 BASE 的。任何提示/想法?

这是我尝试过的方法列表。这些在 BASE 中执行,但从 TEST 中调用。

var t1 = AppDomain.CurrentDomain.BaseDirectory;
var t2 = Assembly.GetExecutingAssembly().Location;
var t3 = Environment.CurrentDirectory;
var t4 = Assembly.GetCallingAssembly().Location;
var t5 = Assembly.GetEntryAssembly().Location;
var t6 = Assembly.GetExecutingAssembly().GetName().CodeBase;
var t7 = Assembly.GetCallingAssembly().GetName().CodeBase;
var t8 = Assembly.GetEntryAssembly().GetName().CodeBase;
var t9 = System.IO.Directory.GetCurrentDirectory();
var t10 = Directory.GetParent(Environment.CurrentDirectory).Parent.Parent.FullName;

正如您在下面看到的,这些中的每一个都指向 TEST 的目录,而不是所需文件所在的 BASE 项目的目录。 在此处输入图像描述 在此处输入图像描述

先感谢您!

标签: c#

解决方案


推荐阅读