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)**;
现在下拉列表按字母顺序显示机构。
我有一个模型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)**;
现在下拉列表按字母顺序显示机构。