按日期排序列表

Fre*_*red 5 c#

我已经尝试过我找到的解决方案,似乎无法让这项工作适合我.

我有一节课:

public class InvokeGetReportRequestListResponse
{
    public MarketplaceWebServiceException Error { get; set; }
    public bool CallStatus { get; set; }
    public List<RequestedReport> Reports { get; set; }
}

public class RequestedReport
{
    public String ReportRequestId;
    public String ReportType;
    public DateTime? StartDate;
    public DateTime? EndDate;
    public Boolean Scheduled;
    public DateTime? SubmittedDate;
    public String ReportProcessingStatus;
    public String GeneratedReportId;
    public DateTime? StartedProcessingDate;
    public DateTime? CompletedDate;
}
Run Code Online (Sandbox Code Playgroud)

我打电话给服务:

InvokeGetReportRequestListResponse callResponse = InvokeGetReportRequestList(callRequest);
Run Code Online (Sandbox Code Playgroud)

现在我要排序的Reports列表中callResponse通过CompletedDate

callResponse.Reports.Sort((x, y) => DateTime.Compare(x.CompletedDate, y.CompletedDate));

这会返回一个错误:

Cannot convert lambda expression to type 'System.Collections.Generic.IComparer<WebFeeds.Amazon.API.DataTypes.RequestedReport>' because it is not a delegate type
Run Code Online (Sandbox Code Playgroud)

Cod*_*dor 4

可以通过以下语句使用 Linq 完成排序。

var Result = callResponse.Report.OrderBy( iItem => iItem.CompletedDate );
Run Code Online (Sandbox Code Playgroud)