public IActionResult ServiceLayers(string folder, string id) { try { if (folder != DefaultFolder) { throw new Exception("Unknown folder: " + folder); } var map = InternetMapServer.Instance[id]; if (map == null) { throw new Exception("Unknown service: " + id); } var jsonLayers = new JsonLayers(); jsonLayers.Layers = map.MapElements.Select(e => Layer(map, e.ID)).ToArray(); return(Result(jsonLayers)); } catch (Exception ex) { return(Json(new JsonError() { error = new JsonError.Error() { code = 999, message = ex.Message } })); } }
public IActionResult ServiceLayer(string folder, string id, int layerId) { try { if (folder != DefaultFolder) { throw new Exception("Unknown folder: " + folder); } var map = InternetMapServer.Instance[id]; if (map == null) { throw new Exception("Unknown service: " + id); } var jsonLayers = new JsonLayers(); return(Result(Layer(map, layerId))); } catch (Exception ex) { return(Json(new JsonError() { error = new JsonError.Error() { code = 999, message = ex.Message } })); } }
private string LayerFullname(JsonLayers layers, JsonLayer layer) { string name = layer.Name; while (layer != null && layer.ParentLayer != null) { layer = layers.LayerById(layer.ParentLayer.Id); if (layer != null) { if (layer.Type == "Annotation Layer" || layer.Type == "Annotation SubLayer") { name = $"{ layer.Name }/{ layer.Name } ({ name })"; } else { name = $"{ layer.Name }/{ name }"; } } } return(name); }