2

我正在使用 MVC + EF

我有一个 Feed xml 文件 url,每 7 分钟更新一次项目,每次添加新项目时,我都会将所有项目检索到列表变量中,然后将这些变量添加到我的数据库表中。之后,我从数据库表中填充了一个新的列表变量,它是我的 ViewModel。然后我在我的视图中声明 ViewModel,它是一个 .cshtml 文件,并循环遍历所有对象并显示它们。

如何确保最新的项目放在顶部而不是底部?

这就是我在 cshtml 中显示项目的方式,注意我使用了 ++number,所以最新的项目需要是 1,依此类推..:

@model Project.Viewmodel.ItemViewModel
 @{
     int number = 0;
     }
 }
 <div id="news-container">
 @foreach (var item in Model.NewsList)
            {
     <div class="grid">
     <div class="number">
                    <p class="number-data">@(++number)</p>
                </div>
                <p class="news-title">@(item.Title)</p>
                <div class="item-content">            
             <div class="imgholder">
            <img src="@item.Imageurl" />
            <p class="news-description">@(item.Description) <br />@(item.PubDate) | <a href="@item.link">Source</a></p>

        </div>
        </div>
      </div>                  
     }
  </div>

这就是我如何填充我在 .cshtml 文件中使用的视图模型来迭代并显示项目

    private void FillProductToModel(ItemViewModel model, News news)
    {
        var productViewModel = new NewsViewModel
        {

            Description = news.Description,
            NewsId = news.Id,
            Title = news.Title,
            link = news.Link,
            Imageurl = news.Image,
            PubDate = news.Date,
        };
        model.NewsList.Add(productViewModel);
    }

对不起油漆哈哈:P

对不起油漆哈哈:P

任何形式的帮助表示赞赏

4

1 回答 1

2
@foreach (var item in Model.NewsList.OrderByDescending(n => n.PubDate)
于 2013-04-29T18:56:17.180 回答