我不知道我该做什么。以下是搜索图像时的代码:
public ActionResult SearchImage() {
var path = @"\\jesus-pc\Frontera\IMAGENES\SINGNOS DISTINTIVOS\0\80HP23891268272.TIF";
FileStream stream = new FileStream(path,FileMode.Open,FileAccess.Read);
byte[] data = new byte[(int)stream.Length];
stream.Read(data,0, data.Length);
return Json(new { base64image = Convert.ToBase64String(data) }, JsonRequestBehavior.AllowGet);
}我是通过ajax完成这一任务的:
$(".doc").dblclick(function () {
$.ajax({
url: "mainpage/SearchImage",
contentType: 'application/json',
dataType: "json",
type: "get",
success: function (data) {
ModalWindow.open();
document.getElementById("img_1").src =
"data:image/jpeg;base64"+data.base64image;
}
})但我在浏览器中得到的是:
{ base64image: base64image AAFXEAAA==“}
发布于 2013-04-18 15:48:23
我相信这就是你要找的。
Can an ASP.NET MVC controller return an Image?
这与编码图像的基64没有任何关系。Base 64编码确实有效,如果这是您想要的,但是看起来您只是想从要在客户机中呈现的服务器上传递一个映像。您可以通过使用FileResult轻松地做到这一点。
在您的示例中,您的图像的src标记应该是src="mainpage/SearchImage",您现有的代码隐藏应该被替换为如下所示:
public ActionResult SearchImage(string id)
{
var path = @"\\jesus-pc\Frontera\IMAGENES\SINGNOS DISTINTIVOS\0\80HP23891268272.TIF";
return base.File(path, "image/tiff");
}https://stackoverflow.com/questions/16084855
复制相似问题