图像控制不显示图像

时间:2013-10-11 07:07:48

标签: c# asp.net vb.net image

我想做什么!

我想使用图像控件显示图像。源图像位于文件目录中。文件的位置是C://目录,而我的项目(虚拟目录)在D://上。我想在页面加载时设置图像源。

我做了什么!

  1. 将图像控件放在我的.aspx页面上。
  2. 在页面上将图片设置为我建议的网址
  3. 以下是我写的代码

        Dim urls As List(Of String) = TryCast(Session("SliderUrls"), List(Of String))
        Dim url As String = urls.Item(4)
        Image1.ImageUrl = url
    

    注意

    正确分配了url值。网址没有问题。在某些网站的互联网上,我读过asp.net不允许我们访问虚拟目录之外的资源。所以你认为这可能是我面临的问题吗?如果是,那么我如何为另一个虚拟目录生成url。就像我在D:// myproject上有一个虚拟目录和另一个虚拟目录C:// files。如何在虚拟目录D:// myprojec中的项目中工作时,在C://文件上生成虚拟目录的URL。

1 个答案:

答案 0 :(得分:2)

网址/路径必须是虚拟的,而不是物理的。

即使您已将目录设为虚拟,但您似乎正在尝试使用物理路径。

尝试使用物理路径(C:/ path)将无效。

尝试使用其他虚拟目录的基本网址并从中构建您的网址。

例如,如果虚拟目录是http://localhost/media

将其用作基本网址并附加http://localhost/media/image.jpg

中的资源
Dim baseUrl as String = "http://localhost/files"

Image1.ImageUrl = baseUrl + "/" + System.IO.Path.GetFileName(urls.Item(4))

我假设网址只包含文件名(例如image.jpg

您还可以将baseUrl存储在web.config appSettings