0

我试图在我的 Index.cshtml 中显示添加到我的表中的最后两个项目。

public class News
{
    [Key]
    public int id { get; set; }

    public string Titre { get; set; }

    public string Description { get; set; }

    public string Image { get; set; }

    public System.DateTime Date { get; set; }
}

现在使用这个我想显示使用日期添加的最后两个“新闻”。

<!--Last item #1-->
<div class="newsBlock" style="clear:left;">
    <img src="" />
    <p></p>
</div>

<!--Last item #2-->
<div class="newsBlock" style="clear:right;">
    <img src="" />
    <p></p>
</div>
<p style="clear:both;">&nbsp;</p>

我尝试使用剃须刀forloop,但以某种方式无法做到,我最终得到了这个......

@foreach (var item in Model)
{
    @{var test = Model.OrderByDescending(modelItem => model.Date).Take(2).ToArray();}
}
4

1 回答 1

0
@foreach (var item in Model.OrderByDescending(modelItem => modelItem.Date).Take(2).ToList())
{
    <div class="newsBlock" style="clear:left;">
        <img src="@item.Image" />
        <p>@item.Title</p>
    </div>
}

或者

控制器中的更好方法

public Action Index()
{
    return View(db.News.OrderByDescending(modelItem => modelItem.Date).Take(2).ToList());
}

看法

@model IEnumerable<News>

@foreach (var item in Model)
{
    <div class="newsBlock" style="clear:left;">
        <img src="@item.Image" />
        <p>@item.Title</p>
    </div>
}
于 2013-03-11T14:55:34.257 回答