上传的HttpPostedFileBase使用FileContentResult Action刷新后不显示图像

时间:2014-06-02 19:58:35

标签: c# asp.net-mvc asp.net-mvc-4

我遇到了控制器操作的问题,我上传了一个图片,初始的POSTed结果显示在视图中没有问题。图像正常显示。

如果我刷新或更改页面并返回,则图像将不再显示。

我已经检查了控制器操作返回的内容,它确实将内容返回到视图。

这是我用来调用控制器动作的IMG标签。

<img src="@Url.Action("Display", "Home")" />

这是控制器动作:

    public ActionResult Display()
    {

        var tempModel = new PartialModel();
        tempModel = (PartialModel)Session["Model"];
        var ImageUpload = tempModel.ProductImage;
        if (ImageUpload != null)
        {
            byte[] content = new byte[ImageUpload.ContentLength];
            ImageUpload.InputStream.Read(content, 0, ImageUpload.ContentLength);
            return File(content, ImageUpload.ContentType);
        }

        return null;


    }

这是接收POST值的创建操作:

    public ActionResult Create(PartialModelStore p)
    {

        Session.RemoveAll();
        //m.initializeModelLists(p);
        Session["Model"] = p;

        //return View("Index", p);
        return RedirectToAction("Index");


    }

我正在使用Session来存储值,因为这只是一个模拟应用程序。

我已经研究过使用数据URI,但我需要支持旧的浏览器,因此我正在使用这种方法。

0 个答案:

没有答案