Проблема была в возврате 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 });
})