【问题标题】:Web API not getting me correct resultWeb API 没有让我得到正确的结果
【发布时间】:2017-10-10 07:22:13
【问题描述】:

我正在使用MySQL 数据库创建WEB API。该数据库包括三个记录,一个仪表序列号,它的信号强度值和日期时间。我想发送仪表序列号,然后获取该序列号的所有记录。我成功地将序列号发送到 URL,但我多次只获得单个记录。下面是控制器代码。

 public MDCEntities medEntitites = new MDCEntities();

 public HttpResponseMessage GetByMsn(string msn)
    {
        try
        {
            return Request.CreateResponse(HttpStatusCode.Found, medEntitites.tj_xhqd.Where(m=> m.zdjh == msn));
        }
        catch (Exception ex)
        {
            return Request.CreateErrorResponse(HttpStatusCode.NotFound, ex);
        }
    }

我得到的回复如下

{
    "zdjh": "000029000033",
    "sjsj": "2017-09-20T00:01:54",
    "xhqd": "28"
},
{
    "zdjh": "000029000033",
    "sjsj": "2017-09-20T00:01:54",
    "xhqd": "28"
},
{
    "zdjh": "000029000033",
    "sjsj": "2017-09-20T00:01:54",
    "xhqd": "28"
},
{
    "zdjh": "000029000033",
    "sjsj": "2017-09-20T00:01:54",
    "xhqd": "28"
},
.
.
.
.
.
// same values are repeating again and again.

我已尝试查看解决方案,但无法从中获得帮助。

任何帮助将不胜感激。

【问题讨论】:

    标签: mysql rest web-services visual-studio-2015 asp.net-web-api2


    【解决方案1】:

    在一次又一次的搜索之后,我设法通过更改查询来解决问题

    到:

    return Request.CreateResponse(HttpStatusCode.Found, medEntitites.tj_xhqd.Where(m=> m.zdjh == msn));
    

    来自

     return Request.CreateResponse(HttpStatusCode.Found, medEntitites.tj_xhqd.Where(m=> m.zdjh == msn).Where(o=> o.sjsj <= dt).Select(m=> new { m.zdjh , m.sjsj, m.xhqd }).Distinct());
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-08
      • 2015-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多