.NET MVC将映像存储在localdb上,并每次重写它
我正在尝试用网络摄像头捕捉一张照片,然后将其保存在localdb上。之后,我想将其分配给一个用户,每次拍摄一张新照片时,都要在服务器上重写原始照片和所有引用 拍摄照片代码:.NET MVC将映像存储在localdb上,并每次重写它,.net,asp.net-mvc,database,image,server,.net,Asp.net Mvc,Database,Image,Server,我正在尝试用网络摄像头捕捉一张照片,然后将其保存在localdb上。之后,我想将其分配给一个用户,每次拍摄一张新照片时,都要在服务器上重写原始照片和所有引用 拍摄照片代码: public ActionResult Capture() { var stream = Request.InputStream; string dump; using (var reader = new StreamReader(st
public ActionResult Capture()
{
var stream = Request.InputStream;
string dump;
using (var reader = new StreamReader(stream))
{
dump = reader.ReadToEnd();
DateTime nm = DateTime.Now;
string date = nm.ToString("yyyymmddMMss");
var path = Server.MapPath("~/WebImages/" + date + "test.jpg");
System.IO.File.WriteAllBytes(path, String_To_Bytes2(dump));
ViewData["path"] = date + "test.jpg";
Session["val"] = date + "test.jpg";
}
return View("Index");
}
我面临的问题是,我不确定如何每次重写它,并将数据库中的所有引用都更改为它。
欢迎任何帮助!谢谢大家! 您还可以在二进制类型的用户表中添加列映像,并将二进制格式映像保存到该列 使用下面的代码将图像转换为二进制格式,并将转换后的字节保存在列中
public byte[] ConvertToBytes(HttpPostedFileBase image)
{
byte [] imageBytes = null;
BinaryReader reader = new BinaryReader
(image.InputStream);
imageBytes = reader.ReadBytes
((int )image.ContentLength);
return imageBytes;
}
有关完整教程,请参阅链接
有两件事,第一件是将图像保存在文件夹中,就像您正在做的一样;第二件是将图像以二进制形式保存在数据库中。你在这两张图片中看哪一张?我想把图片保存在数据库中并重写它,如果它是同一个名字,希望所有的引用都会改变!“我的代码”将图像保存在文件夹中,因此当您将图像保存到应重命名的文件夹(唯一)时,我只需将其保存在数据库中该图像名称,同时将该特定用户的图像名称保存到数据库中,当您要更改该用户的图像时,请从数据库中获取该用户的保存图像名称,并使用图像名称从保存的文件夹中删除该名称,然后将新图像上载到文件夹中,并将其名称保存到数据库中