还使用where子句时如何排序

时间:2019-01-07 00:18:02

标签: database list linq sorting where

我目前正在使用以下代码从数据库中提取列表。使用WHERE条件检索该列表,但是未排序返回该列表。这是在控制器中。

如何修改此代码,以便按字母顺序对返回的列表进行排序?

        if (!string.IsNullOrEmpty(TargetYear))
        {
            ViewBag.HSID = new SelectList(db.Hotspots.Where(g => g.HSID.Contains(TargetYear)).ToList(), "ID", "HSID");
        }

在其他几个字段上,我使用以下方法进行排序,但是我不确定如何将其与上面的where子句结合使用。关键部分是“ .OrderBy(e => e.FIELD),但这正是我不确定如何与查询集成的部分。

ViewBag.LocalityCode = new SelectList(db.Localities.OrderBy(e=>e.LOCALITY1), "LOC_CODE", "LOCALITY1");

其他有用的信息:

ASP.Net MVC5

Microsoft SQL 2012

1 个答案:

答案 0 :(得分:1)

  if (!string.IsNullOrEmpty(TargetYear))
    {
        var data = 
         db.Hotspots
           .Where(g => g.HSID.Contains(TargetYear))
           .OrderBy(e=>e.HSID)
           .ToList();
        ViewBag.HSID = new SelectList(data,"ID", "HSID");
    }