如何从asp.net中的sql server映像字段将映像绑定到中继器控件?
我直接将图像存储到数据库中。现在我想将repeater控件绑定到数据库的image字段。我想从数据库加载所有图像。在asp.net中,传递保存图像的字节流不是正确的方法。如何从asp.net中的sql server映像字段将映像绑定到中继器控件?,asp.net,Asp.net,我直接将图像存储到数据库中。现在我想将repeater控件绑定到数据库的image字段。我想从数据库加载所有图像。在asp.net中,传递保存图像的字节流不是正确的方法。 显示图像的最佳方式是将图像保存在服务器上,并仅将链接传递到图像(例如,使用asp:image控件) 在你的情况下,我想你有两个选择: 重构应用程序以将图像保存在硬盘上,并仅将图像的URL作为文本字段存储在数据库中 当您收到请求并希望显示图像时,请将图像保存到服务器上的临时目录中,然后将该临时图像文件的URL传递给客户端 Hi
显示图像的最佳方式是将图像保存在服务器上,并仅将链接传递到图像(例如,使用
asp:image
控件)
在你的情况下,我想你有两个选择:
Hi Nimesh,你们可以使用下面的方法从字节数组创建映像,并绑定到repetor
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "BookName") %>
<hr>
<%# DataBinder.Eval(Container.DataItem, "BookDescription") %>
<td width="100px">
<p align="left">
<img src= '<%# GetImageFromByte(DataBinder.Eval(Container.DataItem, "Image")) %>'
alt="" style="height:200px;width:200px;border:1px solid gray;"/>
</td>
</p>
到目前为止,您做了什么?谢谢rahul.deshmukhwho如果同时处理多个请求,并且它们都试图编写相同的文件,该怎么办?
//////////////////////// ////////////////////////////
call GetImageFromByte this function from aspx as shown above and convert byte array to image and save in folder then return complete image path
public string GetImageFromByte(object byt)
{
byte[] byts = Convert.ToByte(byt);
return byteArrayToImage(byts);
}
private string byteArrayToImage(byte[] byteArrayIn)
{
System.Drawing.Image newImage;
string strFileName = "Filder path where image need to store " + "yourfilename.gif";
if (byteArrayIn != null)
{
using (MemoryStream stream = new MemoryStream(byteArrayIn))
{
newImage = System.Drawing.Image.FromStream(stream);
newImage.Save(strFileName);
img.Attributes.Add("src", strFileName);
}
lblMessage.Text = "The image conversion was successful.";
}
else
{
Response.Write("No image data found!");
}
return "Filder path where image need to store " + "yourfilename.gif";
}