/// <summary>${iServerJava6R_Query_method_FromJson_D}</summary> /// <returns>${iServerJava6R_Query_method_FromJson_return}</returns> /// <param name="json">${iServerJava6R_Query_method_FromJson_param_jsonObject}</param> public static Recordset FromJson(JsonObject json) { if (json == null) { return null; } Recordset result = new Recordset(); result.DatasetName = (string)json["datasetName"]; result.FieldCaptions = JsonHelper.ToStringList((JsonArray)json["fieldCaptions"]); JsonArray fieldtypes = (JsonArray)json["fieldTypes"]; if (fieldtypes != null && fieldtypes.Count > 0) { result.FieldTypes = new List<FieldType>(); for (int i = 0; i < fieldtypes.Count; i++) { result.FieldTypes.Add((FieldType)Enum.Parse(typeof(FieldType), (string)fieldtypes[i], true)); } } result.Fields = JsonHelper.ToStringList((JsonArray)json["fields"]); List<string> fieldNames = JsonHelper.ToStringList((JsonArray)json["fields"]); JsonArray features = (JsonArray)json["features"]; if (features != null && features.Count > 0 ) { result.Features = new FeatureCollection(); for (int i = 0; i < features.Count; i++) { ServerFeature f = ServerFeature.FromJson((JsonObject)features[i]); f.FieldNames = new List<string>(); if (fieldNames != null && fieldNames.Count > 0) { for (int j = 0; j < fieldNames.Count; j++) { f.FieldNames.Add(fieldNames[j]); } } result.Features.Add(f.ToFeature()); } } return result; }