EF Core:如何对脚手架下拉列表中的项目进行排序?

EF Core: How can I sort items in scaffolded drop-down lists?

我有一个模型class定义如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;

namespace NewProject
{
    public partial class Institutions
    {
        public int InstitutionID { get; set; }    
        public string InstitutionName { get; set; }

        public virtual ICollection<NotificationOfChangePage> NotificationOfChangePage{ get; set; }
        public virtual ICollection<SuspensionOrTerminationPage> SuspensionOrTerminationPage{ get; set; }
    }
}

稍后,当我使用 EF 核心构建 NotificationOfChangePage 或 SuspensionOrTerminationPage(依赖于 Institutions 模型)时,出现在 Create/Edit 页面上的下拉列表按 InstitutionID 排序 - 我该如何制作他们实际上是由 InstitutionName 订购的?这是我会在实际视图中处理的东西吗?

Nick B 的评论让我找到了正确答案。在页面的控制器中,以下代码是通过脚手架生成的:

ViewData["InstitutionID"] = new SelectList(_context.Institutions, "InstitutionID", "InstitutionName");

我必须将 .OrderBy(x => x.Text) 添加到此以获得:

ViewData["InstitutionID"] = new SelectList(_context.Institutions, "InstitutionID", "InstitutionName")**.OrderBy(x => x.Text)**;

现在下拉列表按字母顺序显示机构。