в mydata ожидаемое количество записей не приходит - PullRequest
0 голосов
/ 30 апреля 2018

У меня есть один источник данных, я должен получить 10 записей, но он показывает только 5 записей (sl № 5-10). Я использую выпадающий список. В моем выпадающем списке есть 2 списка. При выборе другого элемента в раскрывающемся списке снова отображается 5 записей. Я хочу показать «записи 10». Несмотря на то, что есть 100 записей, это не показывает 10 записей. При нажатии 25 записей отображается «(6 - 25) 20 записей». Существует некоторая проблема для каждого цикла в теле таблицы

<div class="row">
    <div class="col-xs-12">          
        <div class="box">
            <div class="box-header">
                <h5>
                    Select Water Tank:
                    <select id="ddlPir">
                        <option value="28" selected="selected">K</option>
                       <option value="f2">
                            O
                        </option>
                      </select>
                </h5>
            </div>
            <!-- /.box-header -->
            <div class="box-body">
                <div style="overflow:scroll;overflow-y: hidden;">
                    <table id="listing" class="table table-bordered table-striped table-responsive table-hover">

                        <tbody>
                            @foreach (var item in Model.Select((value, i) => new { i, value }))
                            {
                                <tr class="tr_@item.value.deviceid">
                                    <td>@(item.i + 1)</td>
                                    <td>@item.value.UpdatedTime</td>
                                    <td>@item.value.filled</td>
                                    <td>@item.value.SensorData</td>
                                    <td>@item.value.battery</td>
                                    <td>@item.value.deviceid</td>
                                </tr>
                            }
                        </tbody>

                    </table>
                </div>
            </div>
            <!-- /.box-body -->
        </div>
        <!-- /.box -->
    </div>
    <!-- /.col -->
</div>

 <script>
            $(document).ready(function () {
                $("#listing tbody tr").hide();
                $("#listing tbody tr.tr_" + $("#ddlPir").val()).show();
                $('#ddlPir').change(function () {
                    $("#listing tbody tr").hide();
                    $("#listing tbody tr.tr_" + $(this).val()).show();
                });
            });
    </script>
    <script>
            $(document).ready(function () {
                $('#listing').DataTable();
            });
    </script>
// Model
public class WaterTankViewModel
{
  public double filled { get; set; }
  public double SensorData { get; set; }
  public string UpdatedDate { get; set; }
  public string UpdatedTime { get; set; }
  public string deviceid { get; set; }
  public double battery { get; set; }
}

// Controller
public ActionResult Details()
{
  List<WaterTankViewModel> model = new List<WaterTankViewModel>();
  model.AddRange(getWaterTankDetails("28", 28.5));
  model.AddRange(getWaterTankDetails("f2", 18));

  model = model.OrderByDescending(x => DateTime.Parse(x.UpdatedTime)).ToList();
  return View(model);
}


     private List<WaterTankViewModel> getWaterTankDetails(string deviceID, double height)
        {

            List<WaterTankViewModel> model = new List<WaterTankViewModel>();
                                      WebRequest req = WebRequest.Create(@"url");
                req.Method = "GET";
                req.Headers["Authorization"] = "Basic " + "a2Vybm==";
                HttpWebResponse resp = req.GetResponse() as HttpWebResponse;
                var encoding = resp.CharacterSet == "" ? Encoding.UTF8 : Encoding.GetEncoding(resp.CharacterSet);
                using (var stream = resp.GetResponseStream())
                {
                    var reader = new StreamReader(stream, encoding);
                    var responseString = reader.ReadToEnd();
                    List<WaterTankDetails> Pirs = Newtonsoft.Json.JsonConvert.DeserializeObject<List<WaterTankDetails>>(responseString);
                    foreach (var item in Pirs)
                    {
 dynamic wt = Newtonsoft.Json.JsonConvert.DeserializeObject(responseString);
                        byte[] data = Convert.FromBase64String(item.dataFrame.ToString());
                        string deviceid = deviceID;
                        WaterTankViewModel TankDetailsModel = new WaterTankViewModel();
                        TankDetailsModel.deviceid = deviceID;

                            string hexdata = BitConverter.ToString(data);
                            string enc = BitConverter.ToString(data).Replace(@"-", string.Empty)

                            string battery = Convert.ToString(enc.Substring(6, 2));

                            TankDetailsModel.TankName = "xyz";
                            TankDetailsModel.deviceid = deviceID;
                            TankDetailsModel.battery = batteryLevel;
                            model.Add(TankDetailsModel);
                       }
                }

             return model;
        }

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...