1

私は次のクラスを持っています:

public class Operacao : Valor<Operacao>
{
    public DateTime DataDeAdicao { get; set; }
    public DateTime? DataDeAlteracao { get; set; }
    public DateTime? DataDeExclusao { get; set; }
}

私のメインクラスはすべてこのクラスを継承しています。

linqこれらの3つのフィールド間の最大日付順に並べられた値を返すには、を使用したクエリが必要です。

私は次のようなことを試みました:

.OrderBy(f => new[] { f.Operacao.DataDeAdicao, f.Operacao.DataDeAlteracao, f.Operacao.DataDeExclusao }.Max())

しかし、それは機能していないようです。

4

1 に答える 1

3
IEnumerable<Operacao> collection  = ...;
var ordered = collection
    .OrderBy(op => new[] {op.DataDeAdicao, op.DataDeAlteracao, op.DataDeExclusao}.Max());
于 2012-08-16T19:26:22.727 に答える