猿问

LINQ-如何针对不同的列选择不同的记录

我创建了一个Web API,在其中我尝试对给出日期时间范围的所有记录进行fetc。


public HttpResponseMessage GetMeterPing(DateTime start, DateTime end)

{

    try

    {

        var startDateTime = start;

        var endDateTime = end;


        var result = medEntitites.tj_xhqd.Where(m => m.sjsj <= startDateTime && m.sjsj >= endDateTime)

                                         .OrderByDescending(o => o.sjsj)

                                         .Select(s => new { s.zdjh, s.sjsj, s.xhqd })

                                         .Distinct().ToList();

        return Request.CreateResponse(HttpStatusCode.OK, new { data = result});

    }

    catch (Exception ex)

    {

        return Request.CreateErrorResponse(HttpStatusCode.NotFound, ex);

    }

}

WEB-API URL: http://localhost:14909/api/meters/GetMeterPing/2018-04-27T09:00:00/2018-04-26T21:00:00

注意: zdjh是仪表号,是仪表sjsj的ping日期时间,xhqd是ping值。

现在,在上面的响应中,有多个same的值zdjh。我想以LINQ一种方式设置我的方式,使其返回单个zdjh=>电表编号,其最后一个sjsj=> ping日期时间值和最后xhqd=> ping值

如何设置LINQ?任何帮助将不胜感激。


HUWWW
浏览 108回答 1
1回答
随时随地看视频慕课网APP
我要回答