我的情况是我在MVC代码中获取了一个httppostedfilebase类型的图像。我的SQL数据库中有一个相应的Image类型列。
我需要知道如何在我的数据库中将此httppostedfilebase类型转换/保存为图像。
答案 0 :(得分:4)
创建一个将HttpPostedFileBase对象转换为文件
的函数public byte[] ConvertToByte(HttpPostedFileBase file)
{
byte[] imageByte = null;
BinaryReader rdr = new BinaryReader(file.InputStream);
imageByte = rdr.ReadBytes((int)file.ContentLength);
return imageByte;
}
您的控制器中的代码
public ActionResult Create(AdminDetailsViewModel viewmodel)
{
if (ModelState.IsValid)
{
HttpPostedFileBase file = Request.Files["ImageData"];
viewmodel.Image = ConvertToByte(file);
db.YourDbContextSet.Add(viewmodel);
db.SaveChanges();
}
}
希望这会有所帮助