C# 从另一个项目获取一个项目的基本目录';s级

C# 从另一个项目获取一个项目的基本目录';s级,c#,asp.net,C#,Asp.net,我在一个解决方案中有两个asp.net项目。一个是WebForms,另一个是WebApi项目 我正在尝试使用WebApi中的方法将图像保存在WebForms的根文件夹中。不幸的是,我无法从WebApi方法获取WebForms的BaseDirectory 这就是我尝试过的: //this returns me only the root folder of the API i.e; D:\Projects\MyApp\API\) string basePath = System.AppDomain

我在一个解决方案中有两个asp.net项目。一个是WebForms,另一个是WebApi项目

我正在尝试使用WebApi中的方法将图像保存在WebForms的根文件夹中。不幸的是,我无法从WebApi方法获取WebForms的
BaseDirectory

这就是我尝试过的:

//this returns me only the root folder of the API i.e; D:\Projects\MyApp\API\)
string basePath = System.AppDomain.CurrentDomain.BaseDirectory;

是否可以执行我正在尝试的操作?

我猜,如果相关应用符合某些文件夹树位置要求,您可以使用以下方法导航到相关应用:

string relativePath = "..\\Web\\";
string basePath = System.AppDomain.CurrentDomain.BaseDirectory;
string webPath = Path.GetFullPath(baseDirectory + relativePath);

不确定相关应用程序将托管在何处,否则这可能是一个解决方案。它们之间的唯一关系是从相关webapp调用API方法。部署团队还可以更改这两个项目的根文件夹。所以我不能依赖这个解决方案为什么WebApi试图保存在WebForms项目路径中?为什么不从WebForms中公开一个API方法来保存文件?或者,他们不能共享一些公共文件夹来保存所需的文件吗?该项目的初始结构是为API方法和表单维护两个独立的项目。这可能是个糟糕的设计。但我现在无法改变这一点,我将查看API中的
web.config
,其中的值是WebForms应用程序的目录