Показать сообщение отдельно
  #4 (permalink)  
Старый 08.10.2012, 17:02
Новичок на форуме
Отправить личное сообщение для GreyDog Посмотреть профиль Найти все сообщения от GreyDog
 
Регистрация: 02.10.2012
Сообщений: 6

Проблема была в возврате json строки вебсервисом

[WebMethod]
             [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
             public void Stations()
             {
                  List<vStation> sl = new List<vStation>(DataManager.vStation.GetAllStation().Take(10));
                  List<Station> stl = new List<Station>();

                   for (int i = 0; i < sl.Count; i++)
                   {
                         stl.Add(new Station());
                         stl[i].Id = sl[i].StationId;
                         stl[i].Name = sl[i].NameStation;
                         stl[i].Coord = sl[i].Position.ToString();
                   }
                  var vsl = stl; 
                  var gridData = new
                                                 {
                                                       total = 1,
                                                       page = 1,
                                                       records = vsl.Count,
                                                       rows = vsl,
                                                 };

                  var jsonSerializer = new JavaScriptSerializer();
            string JsonString = jsonSerializer.Serialize(gridData);
            Context.Response.Write(JsonString);
            Context.Response.End();
             }


Строка формируется правильная,грид ее понимает и данные отображаются
$(document).ready(function(){
                $("#list").jqGrid({
                   url: 'WebServiceMonitoringLog.asmx/Stations',
                    datatype: 'json',
                    mtype: 'POST',
                    jsonReader: {
                        repeatitems: false,
                        id: "Id",
                        root: "rows",
                        page: "page",
                        total: "total",
                        records: "records",
                        repeatitems: false,

                    },
                    colNames: ['Id', 'Name', 'Lat', 'Long'],
                    colModel: [{ name: 'Id', index: 'Id' },
                               { name: 'Name', index: 'Name' },
                               { name: 'Lat', index: 'Lat' },
                               { name: 'Long', index: 'Long' }
                    ],
                    pager: jQuery('#pager'),

                    width: 500,
                    height: "100%",
                    scrollOffset: 20,
                    rowNum: 10,
                    rowList: [10, 20, 30],
                    sortname: 'Id',
                    sortorder: "asc",
                    viewrecords: true,
                    caption: 'Описание',
                    hoverrows: false
                }).navGrid('navGrid', '#pager', { edit: false, add: false, del: false });
            })
Ответить с цитированием