我正在使用此代码阅读文章。
List<view_M04FrontpagesEntity> fList = new view_M04FrontpagesService().GetByCategoryId(0);
var article = new M02ArticlesService().GetById(fList.First<view_M04FrontpagesEntity>().M02ArticleId);
我想抓住最新article.UpdatedDate
的文章,如何用linq或其他方法做到最好?
答案 0 :(得分:4)
使用MoreLinq
提供的MaxBy
方法
List<view_M04FrontpagesEntity> fList = new view_M04FrontpagesService().GetByCategoryId(0);
var newest = fList.MaxBy(article => article.UpdatedDate);
答案 1 :(得分:4)
您可以在LInQ中使用OrderByDescending。
var query = myList.Where(x =>x=="somePredicate")
.OrderByDescending(x => x.UpdatedDate ).FirstOrDefault();
返回序列的第一个元素,如果序列不包含元素,则返回默认值。
答案 2 :(得分:1)
var first = articles.OrderByDescending( a => a.UpdateDate ).First();
一般来说,就是这样。您需要自己将此转移到您的代码中,因为您发布的代码都没有帮助。
答案 3 :(得分:1)
var result = (from article in fList
orderby article.UpdatedDate descending
select article).First();
答案 4 :(得分:0)
这是按预期工作的。
var m04FrontpagesEntities = new view_M04FrontpagesService().GetByCategoryId(0).ToList().Select(x => new M02ArticlesService().GetById(x.M02ArticleId)).ToList().OrderByDescending(x => x.UpdatedDate); ;
var article = m04FrontpagesEntities.First();