我循环浏览Model.Images
并显示缩略图库。我想要"主要"图像始终首先显示在页面上。 "主要" image是我在对象Image
中设置的标志/属性。它被称为IsMain
,它是一个布尔值。我不确定如何在后面的代码中对其进行排序或在剃刀中对页面进行排序,以便将属性IsMain
设置为true的图像始终首先显示?
这里是我显示所有图像的地方。
<ul id="sortable">
@foreach (var image in Model.Images) {
<li class="col-sm-6 col-md-4">
<div class="thumbnail">
<a class="close" href="#">×</a>
@{ var base64 = Convert.ToBase64String(image.ImageThumbnail); var thumbSrc = String.Format("data:image/gif;base64,{0}", base64); var base64Modal = Convert.ToBase64String(image.Image); var imgSrcModal = String.Format("data:image/gif;base64,{0}", base64Modal);
var imageId = "pop" + image.YogaSpaceImageId; var imagesourceId = "imagesource" + image.YogaSpaceImageId; }
<a class="image" id="@imageId" href="" data-toggle="modal" data-target="#myModal">
<img id="@imagesourceId" src="@thumbSrc" data-imagesrc="@imgSrcModal" alt="image not found" width="203" height="136" />
</a>
<div class="caption">
<h3>Thumbnail label</h3>
<p>...</p>
<p><a href="#" class="btn btn-primary" role="button">Button</a> <a href="#" class="btn btn-default" role="button">Button</a>
</p>
</div>
</div>
</li>
}
</ul>
答案 0 :(得分:5)
假设Model.Images
是List<Image>
,那么
images = Model.Images.OrderBy(i => i.IsMain).ToList(); // I think I got the syntax right, may have to check that.
应该这样做。
这可以在控制器或视图中完成,无论哪种更适合您的架构。