我正在尝试显示路径存储在模型中的图像。
模型中存储的绝对路径映射到存储上的物理路径。
这有效:
$("#uploadresults").prepend('<img src="../../Uploads/_MG_9806.jpg" alt="" />');
然而,这不起作用:
$("#uploadresults").prepend('<img src= "'+@Url.Content(Model.ImageUrl) +'" alt="Image" />');
Model.ImageUrl =“C:\ Users \ Emad \ Documents \ Visual Studio 2013 \ Projects \ projects_notworking \ MarketSurvey \ MarketSurvey \ Uploads \ _MG_9806.jpg”
在我看来,我只能使用相对路径来使其工作。有没有办法将我的物理路径转换为相对路径?
答案 0 :(得分:0)
尝试使用虚拟路径:
Model.ImageUrl = "~/MarketSurvey/Uploads/_MG_9806.jpg";
虚拟路径是相对于您的网站项目的文件夹,因此您可能需要根据项目中的MarketSurvey
是项目文件夹或项目文件夹本身来调整它。
这个更简单的视图代码应该更好用:
$("#uploadresults").prepend('<img src="@Url.Content(Model.ImageUrl)" alt="Image" />');
答案 1 :(得分:0)
我没有使用jquery来更新页面上的图像,而是在我的视图中使用了服务器端变量。这对我有用:
<div id="uploadresults" class="">
@foreach (var item in Model.Images)
{
<img src="@item.ImageUrl.Replace(Request.ServerVariables["APPL_PHYSICAL_PATH"], "../../")" width=100 height=100 />
}
</div>
当然积分可以转到这篇文章:Getting relative virtual path from physical path