c# - 在 Entity Framework 中按自定义顺序对 VARCHAR 字段进行排序

标签 c# sql linq entity-framework linq-to-sql

我有一个名为“ApDay VARCHAR(15)”的表字段,其中包含星期几。我想根据 ApDay 字段对表值进行排序。这意味着我想根据星期几对结果进行排序。但我想将它们排序为自定义顺序。这意味着“星期六”应该排在第一位,然后是“星期日、星期一……”等其他日期。我正在使用 Entity Framework 。谁能告诉我如何使用 Entity Framework 和 C# 实现这一目标。

提前致谢。

最佳答案

定义一个枚举如下

public enum Day
{
    Sunday =0, Monday = 1, Tuesday = 2, Wednesday =3, Thursday = 4, Friday = 5, Saturday = 6
}

然后您可以按如下所示通过 AppDay 准备有序列表。

var orderedList = myTableData.OrderByDescending(x => (int)Enum.Parse(typeof(Day), x.AppDay, true)); 

关于c# - 在 Entity Framework 中按自定义顺序对 VARCHAR 字段进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26202522/

相关文章:

c# - 为什么我的数据绑定(bind) TabControl 看起来不像我的非数据绑定(bind) TabControl?

c# - 命名空间 'xxx' 中的子元素 'http://yyy' 无效,而实际上 xml 中没有额外的命名空间设置

Sqlite:多次更新(查找和替换)不区分大小写

sql - Clickhouse:如何将日期转换为长整数?

sql - 如何使用 Postgresql 在另一个 Select 中执行 Select

c# - 在 WPF 应用程序的属性中设置/返回值

c# - 如何在鼠标悬停时设置 ComboBox 背景的样式?

.net - LINQ 包含基于属性

.net - 使用 LINQ 在标记元素处拆分列表?

c# - LINQ to Entities 和多对多