从同一个表LINQ中获取多个不同的值

时间:2016-09-25 20:58:13

标签: database linq linq-method-syntax

我想只使用一个LINQ查询,根据多个条件从单个表中检索多个值。我的表看起来像:

ArticleId (int)
ArticleName (string)
CreatedDate (datetime)
ArticleType (string)
Views (int)

我想要检索:

  1. 最近创建的5篇文章,
  2. 带有最多观看次数的前5篇文章,
  3. 文章类型=“新闻”的前5篇文章
  4. 仅使用一个LINQ查询。 我是新手学习这些东西,所以我不知道这是否可能。请原谅我,如果这是一个愚蠢的问题。如果有任何机构可以请求LINQ中的方法语法。任何帮助都是适当的。

1 个答案:

答案 0 :(得分:0)

我将在方法语法和多个查询中回答(因为单个不可读,我不明白为什么你会想要一个)

最近发表的5篇文章 articles.OrderByDescending(a => a.CreatedDate).Take(5);

包含最多观看次数的前5篇文章 articles.OrderByDescending(a => a.Views).Take(5);

使用ArticleType ="新闻" 的前5篇文章 不知道如何在这里定义顶部,但你可以填写空白:

articles. Where(a => a.ArticleType == "News").OrderBy(...).Take(5);