如何在数据表中添加图像?
我尝试了以下代码,
Image img = new Image();
img.ImageUrl = "~/images/xx.png";
dr = dt.NewRow();
dr[column] = imgdw;
但它显示文字System.Web.UI.WebControls.Image
在 gridview 而不是图像中。
试试这个代码:
DataTable dt = new DataTable();
dt.Columns.Add("col1", typeof(byte[]));
Image img = Image.FromFile(@"physical path to the file");
DataRow dr = dt.NewRow();
dr["col1"] = imageToByteArray(img);
dt.Rows.Add(dr);
where imageToByteArray
is
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
所以想法是不要尝试直接存储图像,而是将其转换为 byte [] 然后存储它,以便稍后您可以重新获取它并使用它或将其分配给像这样的图片框:
pictureBox1.Image = byteArrayToImage((byte[])dt.Rows[0]["col1"]);
where byteArrayToImage
is:
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
return returnImage;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)