单击拇指图像时,我必须在同一视图中的div中以实际大小显示图像。我会解释我的情景。我正在使用asp.net mvc 2应用程序。在我看来,我有图像的拇指图像,它作为byte []存储在数据库中,而fileId也作为隐藏字段存储。单击拇指图像时,我需要显示存储在数据库中的实际图像。实际图像应显示在同一视图中的div中,单击拇指图像时应显示该div。这应该使用jquery发生。 感谢您对此进行调查。
答案 0 :(得分:0)
如果您在数据库中以字节格式进行图像处理,则首先需要将图像保存在服务器目录中,并在保存图像文件后,在jquery的帮助下显示它。您还可以使用灯箱之类的插件以更具吸引力的方式显示图像。
通过这种方式,您可以在使用jquery的同一视图上显示图像,并发出AJAX请求来获取图像。
答案 1 :(得分:0)
您可以使用HttpHandler
。向项目添加通用处理程序,并在ProcessRequest
方法
context.Response.Clear();
var imageID = context.Request.QueryString["imageID"];
MemoryStream stream = new MemoryStream();
try
{
byte[] buffer = GetYourImageBuffer(imageID);
if(buffer != null)
{
stream = new MemoryStream(buffer);
Image image = Image.FromStream(stream);
context.Response.ContentType = "image/jpeg"; //Or what ever
image.Save(context.Response.OutputStream, ImageFormat.Jpeg);
}
}
finally
{
context.Response.Flush();
stream.Close();
}
然后在你的html中你可以通过......来调用它。
<img src="ImageHandler.ashx?imageID=<%: Model.Image.ID %>" />