如何从同一解决方案中的另一个项目获得项目的相对路径
本文关键字:项目 另一个 路径 相对 解决方案 | 更新日期: 2023-09-27 18:00:22
我的解决方案中有两个项目。我需要在第二个项目中获得第一个项目的图像文件的相对路径。我怎么能这么做?
已尝试此资源中的代码:
我参考ProjectA中的ProjectB,并使用它(在ProjectA中):
@"/ProjectB;component/images/prod-2809854.jpg"
不起作用。
我知道我可以使用这个(在项目A中):
AppDomain.CurrentDomain.BaseDirectory
它将返回ProjectA的基本目录。然后我想我可以解析字符串,获得解决方案目录并将ProjectB/images/
附加到它。
这是正确的方式吗?能做得更好吗?
谢谢!
编辑:例如,我在控制台应用程序中运行代码(添加到同一解决方案中,因为在此阶段我无法测试我的windows服务应用程序)。我需要获得图像的相对路径:
// e.g. to check the GetMonitoringPath() method in main() in console app
Console.WriteLine(File.Exists(GetMonitoringPath()));
public static string GetMonitoringPath()
{
return @"/WebStore;component/images/prod-2809854.jpg";
}
File.Exists()返回false,但我确信该文件存在:)
这适用于我的
<img alt="" style="cursor:pointer" src="../../../Booking/images/plus.gif" />
在键入src之后,VS将要求您选择您的URL。
如果这不起作用,请发布关于你到底在做什么的代码。
如果您想从控制台应用程序或服务访问web项目中的文件,我会保持简单,并将web项目的路径存储在其他项目的app.config appSettings中。
如果这些文件在编译时存在,则可以使用嵌入式资源在项目之间共享这些文件。除此之外,还需要使用某种路径(相对路径或其他路径)来引用其他文件夹。