我正在使用 asp.net MVC 和 sql 服务器。我创建了一个页面,该页面从用户那里获取一些信息,例如名称、价格……以及一张图片,并且该页面重复了 30 次。这意味着每次用户提交公司所有信息保存到数据库和字段变得清晰,用户必须提交下一个信息。现在我希望每次用户提交表单时,页面都会在其旁边显示以前上传的图像。但我不知道如何显示上传的图像。而且我想知道如何显示所有以前的图像。请帮帮我,给我看一些代码!非常感谢。
问问题
1284 次
3 回答
3
如果您将图像作为图像数据类型存储在 SQL 中,我将使用自定义 http 处理程序在页面上显示图像。我使用类似的东西
public class ImageHandler : IHttpHandler
{
public bool IsReusable
{
get
{
return false;
}
}
public void ProcessRequest(HttpContext context)
{
string imageid = context.Request.QueryString["ImID"];
using (DataContext data = new DataContext())
{
var image = data.Products.Where(p => p.ID.ToString() == imageid).Select(p => p.Image).Single();
context.Response.BinaryWrite((byte[])image.ToArray());
context.Response.End();
}
}
}
要显示图像,只需将图像 url 设置为
ImageHandler.ashx?ImID={Id of the database entry}
于 2012-10-26T15:57:20.393 回答
0
chead23 的答案是完美的图像部分。如果您想从 mvc 控制器中执行此操作,请查看以下问题: Write binary data as a response in an ASP.NET MVC web control
Freyday 的回答完成了 cheads23 的回答。
于 2012-10-26T16:23:30.440 回答
0
设置表单的方式非常繁琐且不切实际,我建议您实现类似Flickr的图像上传/编辑功能。
例如,有一个输入框,允许使用SHIFT
/CTRL
键选择多个图像,然后上传这些图像。在下一页上,您将拥有所有图像作为缩略图,并且要设置名称/价格,用户可以单击编辑,两个字段会出现一个提交按钮,您可以异步提交更改。
或者,您可以在每张照片下放置两个表单并使用一个提交按钮。
PS 首先,您需要向我们展示您的尝试,然后我们才能为您提供帮助。
于 2012-10-26T16:42:13.873 回答