我正在创建一个小应用程序,我正在从数据库中读取图像,将图像存储在文件中,然后将图像控制 ImageURL 属性设置为创建的文件
代码很简单
Dim m_Bytes As Byte() = DirectCast(command.ExecuteScalar, Byte())
Dim strfn As String = "D:\" + Convert.ToString(DateTime.Now.ToFileTime()) + ".jpeg"
Dim fs As New FileStream(strfn, FileMode.CreateNew, FileAccess.Write)
fs.Write(m_Bytes, 0, m_Bytes.Length)
fs.Flush()
fs.Close()
Image1.ImageUrl = strfn
图像在该位置正确创建,但图像控件无法渲染图像。我检查了页面的来源,图像控件指向
<img id="Image1" src="D:\129901061171254403.jpeg" />
src指向正确的位置......
提前致谢....
答案 0 :(得分:1)
您必须将图像存储在IIS下可访问的位置。
例如,您可以在应用程序下有一个存储图像的文件夹。假设您的应用程序已部署在d:\virtualDirs\myApp
文件夹中,您可以在网址http://someserver.com/superapp/
上进行浏览。
然后,您可以将图像存储在(例如)文件夹d:\virtualDirs\myApp\dynImages
:
d:\virtualDirs\myApp\dynImages\129901061171254403.jpeg
然后设置ImageUrl
:
Image1.ImageUrl = "~/dynImages/129901061171254403.jpeg";
在网页中发送本地文件夹路径根本无法正常工作,因为该文件位于服务器上。