使用lin.net by asp.net从数据库中检索图像

时间:2016-04-01 14:31:38

标签: c# asp.net linq

我想使用asp.netlinq从数据库中获取图片 我想在用户进入他看到图像的页面时制作一个页面

Professor_Dim prof = sdc.Professor_Dims.SingleOrDefault(x => x.P_ID == 0);

if (FileUpload1.HasFile && FileUpload1.PostedFile.ContentLength > 0) {
  string fileName = FileUpload1.FileName;
  byte[] fileByte = FileUpload1.FileBytes;
  Binary binaryObj = new Binary(fileByte);
  prof.P_Image = binaryObj;
  sdc.SubmitChanges();
}

此代码将图像上传到数据库我想在另一页中检索该图像

1 个答案:

答案 0 :(得分:0)

ASP.net MVC

我做的有点不同。我将byteData按原样存储在数据库中,然后执行以下操作:

Bitmap bmp;

        byte[] img = //retrieve bytes from DB

        if (img == null)
            return new EmptyResult();

        using (MemoryStream ms = new MemoryStream(img))
        {
            bmp = new Bitmap(Image.FromStream(ms));
        }

如果你正在使用ASP MVC,你可以返回一个ImageResult,你将bmp作为Image放置,例如用于ImageFormat ImageFormat.Jpeg。

<强> ASP.NET

byte[] bytes = //retrieve the Image bytes from the database;
    string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
    Image1.ImageUrl = "data:image/jpeg;base64," + base64String;