我正在创建一个显示数据库中多个图像的页面... 我可以这样做,如果我只显示一个图像,使用一个页面呈现为图像.. 像这样......
using (SqlDataReader reader = comm.ExecuteReader())
{
Byte[] images = new Byte[]();
while (reader.Read())
{
Response.BinaryWrite(images);
}
}
在aspx文件中我有:
<asp:Image ID="imgPhoto" runat="server" ImageUrl="~/ShowImages/LoadImages.aspx" Height="100px" Width="100px" BorderWidth="1px" />
我想要实现的是从数据库中显示多个图像而不将页面呈现为图像......
有没有办法解决这个问题??
谢谢你们
答案 0 :(得分:2)
我认为最好的方法是不使用数据库并将图像存储在磁盘上 - 通过以二进制形式将图像存储在db列中,这样就限制了自己。
如果您真的以这种方式设置存储图像,那么我只建议从数据库加载您想要的所有图像,并将它们写入磁盘上的临时文件夹,然后显示<img />
列表标记引用它们在服务器上的临时位置。
您所做的就是每次请求图像时都删除上一个请求中的图像。
答案 1 :(得分:1)
您需要创建一个按ID提供单个图像的页面,然后添加多个<img>
标记,这些标记在查询字符串中引用具有不同ID的页面。