2017-04-01 56 views
-1

我知道类似的问题已被问到很多,但没有任何答案对我有帮助。很多时候,我正在使用一个MVC项目和一个其他人创建的CL项目,这个项目实际上应该是一个Web应用程序(漫长而令人沮丧的故事)。他这样做是通过编程方式生成的图像存储在用户的C:/驱动器上,然后显示出来,这在桌面应用程序中运行良好,但在Web应用程序中运行得并不那么顺利。我试过<img src="file:/filepath">,但没有运气。我知道我无法直接访问用户C:/驱动器上的文件,应该将映像上传到服务器,然后从那里进入,但我不知道如何去做,并且希望有人可以指引我走向正确的方向。<img src="C:/Some_File">在ASP.net MVC

+0

你试过转换将图像转换为数据并通过src =“data:image ...”显示它? – CrudaLilium

+0

你能否展示一些你已经尝试过的其他答案,并解释他们为什么没有任何帮助?我担心,我们所说的任何话都无济于事。 –

+0

@DourHighArch [链接](http://stackoverflow.com/questions/4090712/why-cant-i-do-img-src-c-localfile-jpg)这是我发现的几个之一。他们中的大多数人只是说“这是一个安全漏洞”并停止,或者说在文件位置之前使用file:/。 – trcoats

回答

1

假设你存储你的形象:

public byte[] MyImage { get; set; } 

你可以将它传递给视图:

public ActionResult Index() 
{ 
    ViewBag.MyImage = Convert.ToBase64String(MyImage); 
    return View(); 
} 

在视图显示它想:

<img src="data:image/png;base64,@ViewBag.MyImage" />