C# 如何使用ASP.NET MVC 5在我的表单中以编辑模式返回上载的图像?

C# 如何使用ASP.NET MVC 5在我的表单中以编辑模式返回上载的图像?,c#,asp.net-mvc,C#,Asp.net Mvc,我已经创建了一个表单,我正在使用表单提交在我的数据库中插入一些数据和图像。。。但是,当我在编辑模式下打开时,除了图像之外,所有插入的数据都可以在输入字段中使用?我该如何解决这个问题 视图: 创建操作 我的主要问题是所有字段都是在编辑模式下打开的,这意味着它们是在编辑模式下打开的,字段中有预插入的数据值,但图像没有预插入的值。在jquery和纯Javascript中尝试以下解决方案,您只需要检索上载图像的字节数组,然后就可以使用它了扩展,然后只给你的图像控制生成的src我希望它有帮助 var

我已经创建了一个表单,我正在使用表单提交在我的数据库中插入一些数据和图像。。。但是,当我在编辑模式下打开时,除了图像之外,所有插入的数据都可以在输入字段中使用?我该如何解决这个问题


视图:
创建操作
我的主要问题是所有字段都是在编辑模式下打开的,这意味着它们是在编辑模式下打开的,字段中有预插入的数据值,但图像没有预插入的值。

在jquery和纯Javascript中尝试以下解决方案,您只需要检索上载图像的字节数组,然后就可以使用它了扩展,然后只给你的图像控制生成的src我希望它有帮助

 var PhotoArr = []; //array of bytes from the server
var PhotoExt = "jpg";//example
if (PhotoArr) {
    var byteArray = new Uint8Array(oldResume.PhotoArr);
    var blob = new Blob([byteArray], { type: 'application/' + PhotoExt });
    var image = $('#yourImageId');
    var urlCreator = window.URL || window.webkitURL;
    var imageUrl = urlCreator.createObjectURL(blob);

    image.attr('src', imageUrl);

}

在jquery和纯Javascript中尝试以下解决方案,您只需要检索您上传的图像的字节数组及其扩展名,然后将生成的src交给您的图像控制,我希望这会有所帮助

 var PhotoArr = []; //array of bytes from the server
var PhotoExt = "jpg";//example
if (PhotoArr) {
    var byteArray = new Uint8Array(oldResume.PhotoArr);
    var blob = new Blob([byteArray], { type: 'application/' + PhotoExt });
    var image = $('#yourImageId');
    var urlCreator = window.URL || window.webkitURL;
    var imageUrl = urlCreator.createObjectURL(blob);

    image.attr('src', imageUrl);

}

我的朋友,你能发布创建动作代码吗?是的!我已经编辑了这篇文章。你不能。浏览器中的文件输入对话框不是这样工作的。用户必须选择一个文件。您无法使用所选文件预填充它,因为a)您无权访问用户的磁盘,b)即使您访问了,您也不知道该文件是否存在,或者他们是否使用相同的设备访问您的网站。但是,由于这是一个图像,您可以在“编辑”屏幕中显示现有上传的图像,因此用户可以决定是否替换它。但是你能告诉我我能做到这一点吗?你能发布创建行动代码吗,我的朋友?是的!我已经编辑了这篇文章。你不能。浏览器中的文件输入对话框不是这样工作的。用户必须选择一个文件。您无法使用所选文件预填充它,因为a)您无权访问用户的磁盘,b)即使您访问了,您也不知道该文件是否存在,或者他们是否使用相同的设备访问您的网站。但是,由于这是一个图像,您可以在“编辑”屏幕中显示现有上传的图像,因此用户可以决定是否替换它。但是你能告诉我我能做到吗?
 public ActionResult Create()
    {

        return View();
    }


    [HttpPost]

    public ActionResult Create([Bind(Include = "ProductName,Description,PriceExpected,OldTime,Status,Photo")]Product product,HttpPostedFileBase file)
    {          
            if (file != null)
            {
                product.Photo = new byte[file.ContentLength];
                file.InputStream.Read(product.Photo, 0, file.ContentLength);



            }
            else
            {
                ModelState.AddModelError("", "Please Select image");
            }

            db.Products.Add(product);
            db.SaveChanges();



        return RedirectToAction("Index");

    }
 var PhotoArr = []; //array of bytes from the server
var PhotoExt = "jpg";//example
if (PhotoArr) {
    var byteArray = new Uint8Array(oldResume.PhotoArr);
    var blob = new Blob([byteArray], { type: 'application/' + PhotoExt });
    var image = $('#yourImageId');
    var urlCreator = window.URL || window.webkitURL;
    var imageUrl = urlCreator.createObjectURL(blob);

    image.attr('src', imageUrl);

}