EF:如果不为空,则按2个字段排序

时间:2018-10-05 08:53:15

标签: c# sql entity-framework entity-framework-6

我有一个带有字段的实体:

public partial class Load 
{
    public DateTime CreatedOn { get; set; }
    public DateTime? UpdatedOn { get; set; }
}

我必须通过以下方式订购记录(DESC): 如果UpdatedOn具有值,则“查看”该值,否则查看CreatedOn值。怎么做?

1 个答案:

答案 0 :(得分:5)

?? 运算符称为null-coalescing运算符。如果操作数不为null,则返回左侧的操作数;否则,返回0。否则返回右手操作数 look here

 items.OrderBy(x => x.UpdatedOn ?? x.CreatedOn);

OR

 items.OrderByDescending(x => x.UpdatedOn ?? x.CreatedOn);