【发布时间】:2016-11-08 16:58:56
【问题描述】:
我正在尝试使用 MVC5 创建图像幻灯片。这是我的模型类:
public class ImageSlider
{
public string Source { get; set; }
public string ImageName { get; set; }
public string Title { get; set; }
}
对于这个模型,我创建了一个控制器和一个动作:
public ActionResult _imageSlider()
{
return View(new List<ImageSlider> {
new ImageSlider { Source = "~/_Slider/Images/google.jpg" },
new ImageSlider { Source = "~/_Slider/Images/googlePlus.jpg" },
new ImageSlider { Source = "~/_Slider/Images/facebook.jpg" }
});
}
这是我的部分观点:
<div class="cycle-slideshow" data-cycle-fx="scrollHorz" data-cycle-pause-on-hover="true">
@foreach (var item in Model)
{
<img src="@item.Source" />
}
</div>
现在的问题是,当我像上面那样创建图像标签时,我看不到任何图像,而我可以在我的页面源中看到这些元素已被创建。但是如果我在 HTML 中创建这些标签,所有图像都是可见的。示例:
<div class="cycle-slideshow" data-cycle-fx="scrollHorz" data-cycle-pause-on-hover="true">
<img src="~/_Slider/Images/google.jpg" />
<img src="~/_Slider/Images/googleplus.jpg" />
<img src="~/_Slider/Images/facebook.jpg" />
</div>
我知道我在这里遗漏了非常小的东西,但我不知道是什么。谁能帮帮我?
【问题讨论】:
-
当您看到创建的项目时,它们是否具有正确的来源,即与您直接在 html 中创建它们时完全相同?
-
试试 src="@Url.Content(item.Source)"
-
@AsheraH,是的。事实上,我从页面源复制了上面的静态 html 代码
-
@mww,它是这样工作的。但是你能解释一下使用
<img src="@item.Source" />的基本区别是什么吗?
标签: c# html asp.net-mvc-5