Asp.net mvc ASP.NET MVC中未显示图像

Asp.net mvc ASP.NET MVC中未显示图像,asp.net-mvc,Asp.net Mvc,在ASP.NET MVC应用程序中,文件成功保存到文件夹中,其URL保存到SQL数据库。使用此URL从文件夹在浏览器中加载文件时出现问题。代码实现是: [HttpPost] [ActionName("UploadPhoto")] public ActionResult UploadPhoto(HttpPostedFileBase photoPath) { var fileName = Path.GetFileName(photoPath.FileName

ASP.NET MVC
应用程序中,
文件
成功保存到文件夹中,其
URL
保存到
SQL数据库
。使用此
URL
从文件夹在浏览器中加载
文件时出现问题。代码实现是:

[HttpPost]
    [ActionName("UploadPhoto")]
    public ActionResult UploadPhoto(HttpPostedFileBase photoPath)
    {
         var fileName = Path.GetFileName(photoPath.FileName);
        string path;
        if (photoPath.ContentLength > 0)
        {
            path = Path.Combine(Server.MapPath("~/Images/photos"), fileName);
            photoPath.SaveAs(path);
        return RedirectToAction("CreateWithImage", new { path = path });
        }
return View();
    }

public ActionResult CreateWithImage(string path)
    {
        employee em = new employee();
        em.districts = new SelectList(hc.districts, "name", "name");
        em.photoPath = path;
        return View(em);
    }
文件(图像)在视图中呈现为:

@model HRMS.Models.employee
<dd>
        @Html.Image(@Model.photoPath)
    </dd>
调用View时,我看到图像的链接断开。加载页面(视图)的HTML(具有正确的文件路径)如下所示:

<dd>                
            <img src="/App_Data/photos/1.png" />
            </dd>

当我尝试在浏览器中运行图像的物理路径时,即,
请求的URLhttp://localhost:57852/App_Data/photos/1.png
,它正在抛出
HTTP错误404.8-找不到
错误


我哪里会错呢?请帮忙

不相关,但删除
ViewBag.upload=“成功!照片已成功上载。”-您的重定向将不起任何作用。并删除
TempData[“filePath”]=fpath
字符串fp=Convert.ToString(TempData[“filePath”])并使用'em.photoPath=path;接下来,声明
字符串路径;在
if`之前阻塞并仅使用
path=path.Combine(…)在循环内部。然后删除
字符串fpath=“~/App\u Data/photos/”+文件名并使用
返回重定向到操作(“CreateWithImage”,new{path=path})
404.8
错误通常意味着您对
\u AppData
中文件的请求被拒绝(这是默认设置)。建议您在应用程序中创建另一个文件夹(例如
\Images\photos
),将该文件复制到该文件夹中,然后使用该路径进行尝试。@StephenMuecke现在一切正常。非常感谢你的帮助。
<dd>                
            <img src="/App_Data/photos/1.png" />
            </dd>