当foreach循环在_PartialView页面工作时,图像不显示
本文关键字:工作 图像 显示 循环 foreach PartialView | 更新日期: 2023-09-27 18:18:34
我有一个像这样的模型类
public class UserViewModel
{
public UserViewModel()
{
UsersDet = new Dictionary<long, string>();
usrdat = new List<User>();
}
public Dictionary<long , string> UsersDet { get; set; }
public IEnumerable<User> usrdata { get; set; }
}
然后我试图在部分视图中获得这些模型值,如以下
这个局部视图实际上是一个弹出式。
_UserView部分视图
@model Project.ViewModels.UserViewModel
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body" style="width: 530px;">
<div id="slider_view" style="display: block;">
<div class="flexslider">
<ul class="slides">
@foreach (var item in Model.UsersDet )
{
<li data-thumb="~/Upload_Images/A.jpg">
<img src="~/Upload_Images/A.jpg" data-imagedata="image001" />
<p class="flex-caption">Title</p>
</li>
}
</ul>
</div>
</div>
</div>
</div>
</div>
在这里我不能看到A.jpg
的图像弹出,但当我使用像下面我可以看到图像
_UserView部分视图
@model Project.ViewModels.UserViewModel
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body" style="width: 530px;">
<div id="slider_view" style="display: block;">
<div class="flexslider">
<ul class="slides">
@for (int i =0; i < 3 ; i ++)
{
<li data-thumb="~/Upload_Images/A.jpg">
<img src="~/Upload_Images/A.jpg" data-imagedata="image001" />
<p class="flex-caption">Title</p>
</li>
}
</ul>
</div>
</div>
</div>
</div>
</div>
这是一个控制器方法来绑定值到上面的弹出
[HttpGet]
public PartialViewResult MethodName(int id)
{
try
{
IEnumerable<User> listofData = ..
UserViewModel listofimage = new UserViewModel();
if (listofData != null)
{
listofimage.usrdata = listofData;
foreach(var item in listofimage.usrdata)
{
var path = RenderImage(item.ImageValue, "UploadImagePath");
var fileResult = path as FilePathResult;
if (fileResult != null)
{
string imageurl = fileResult.FileName;
imageurl = imageurl.Replace(@"''", @"'");
listofimage.UsersDet.Add(item.CaseID, imageurl);
}
}
}
return PartialView("_UserView", listofimages);
}
catch (Exception)
{
throw;
}
}
public ActionResult RenderImage(string imageid, string pathvalue)
{
try
{
var URL = System.Configuration.ConfigurationManager.AppSettings[pathvalue].ToString();
var path = Path.Combine(URL, imageid + ".jpg");
return base.File(path, "image/jpeg");
}
catch (Exception)
{
throw;
}
}
我的foreach
方法有什么问题?如何将元素填充为循环
If Model。UsersDet用项目填充,然后<元素将被呈现。如果它们被渲染,但你没有看到图像,那么你打开devtools,在Network选项卡中寻找每个图像的请求。如果有请求有坏的响应,然后你修复它根据返回的http状态。>
但是没有项目要调试,如果你说@for正在工作,但@foreach不是,那么问题应该是模型。UsersDet为空。