创建数据库表来存储图片数据
在SQL Server中创建一个名为“Images”的表,其中包括字段“Id”(PK),“FileName”,“FileContent”,“MimeType”和“Description”。
在ASP.NET MVC应用程序中创建Model
创建一个名为“Image”的Model类,并添加以下属性:
public int Id { get; set; }
public string FileName { get; set; }
public byte[] FileContent { get; set; }
public string MimeType { get; set; }
public string Description { get; set; }
数据上下文类中添加数据库集
在应用程序的数据上下文类中,添加一个名称为“Images”的数据库集,如下所示:
public DbSet Images { get; set; }
创建一个视图来上传多个图片文件
创建一个包含输入类型为“file”的多个字段的视图,“multiple”属性设置为“true”,如下所示:
修改控制器来处理文件上传
在控制器中,添加以下代码来处理上传的文件并将其保存到数据库中:
[HttpPost]
public ActionResult Upload(IEnumerable files)
{
foreach (var file in files)
{
if (file != null && file.ContentLength > 0)
{
var image = new Image
{
FileName = Path.GetFileName(file.FileName),
FileContent = new byte[file.ContentLength],
MimeType = file.ContentType,
Description = "Uploaded by user at " + DateTime.Now
};
file.InputStream.Read(image.FileContent, 0, file.ContentLength);
db.Images.Add(image);
db.SaveChanges();
}
}
return RedirectToAction("Index");
}
在视图中显示图像
使用以下代码从数据库中检索图像并在视图中显示它们:
@foreach (var image in Model)
{
}
添加控制器操作以