2

我的解决方案中有两个项目。我需要从第二个项目中的第一个项目获取图像文件的相对路径。我怎么能这样做?

已经尝试过此资源中的代码:

我从 ProjectA 引用 ProjectB 并使用它(在 ProjectA 中):

@"/ProjectB;component/images/prod-2809854.jpg"

不工作。

我知道我可以使用它(在 ProjectA 中):

 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,但文件存在,我确定 :)

4

2 回答 2

0

这对我有用

<img alt="" style="cursor:pointer" src="../../../Booking/images/plus.gif" />

输入 src 后,VS 会要求你选择你的 URL。

如果这不起作用,请发布有关您正在做什么的代码。

于 2013-02-20T20:45:10.553 回答
0

如果您想从控制台应用程序或服务访问 Web 项目中的文件,我会保持简单并将 Web 项目的路径存储在另一个项目的 app.config appSettings 中。

如果文件在编译期间存在,则可以使用嵌入式资源在项目之间共享文件。除此之外,需要使用某种路径(相对或其他)来引用其他文件夹。

于 2013-02-21T02:00:08.173 回答