如何使用asp net razor从varbinary设置图像标记源

时间:2016-07-24 09:45:23

标签: c# asp.net-mvc image razor base64

我有一个项目,可以将像image64这样的文件保存到varbinary到数据库。

我想将varbinary或base64加载到图像标记源,而不使用razor标记或直接查询数据库。

我有这段代码从db:

下载file by id
public ActionResult Download(String Id)
        {


            if (Session["user"] == null)
                return RedirectToAction("Landing", "Home");

            try
            {
                var file = dbIntegrated.DATAFiles.Where(p => p.Id == Guid.Parse(Id)).FirstOrDefault();

                if (file.Data != null)
                {
                    string basesFile = Encoding.ASCII.GetString(file.Data.ToArray());
                    Byte[] bytes = Convert.FromBase64String(basesFile.Split(',')[1]);

                    return File(bytes, "multipart/form-data", file.Name);
                }
                else
                {
                    return File(file.Location + file.Name, "multipart/form-data", file.Name);
                }
            }
            catch (Exception ex)
            {
                //return RedirectToAction("DownloadError", "File");
                return View();
            }            
        }

所以,如果我想下载文件,我就像这样使用它

http://mywebsite.com/file/download/someGuidAsFileID

但我担心这种情况不会起作用:

<img src="http://mywebsite.com/file/download/someGuidAsFileID" />

请帮助我如何使这个条件有效,所以我只需要图像文件的ID并将其放在图像源上它会显示图像?

0 个答案:

没有答案