/// <summary> /// Gets all stored map layers /// </summary> /// <returns>Datatable</returns> public MapMetadata.metaLayersDataTable GetLayers() { try { MapMetadata.metaLayersDataTable table = new MapMetadata.metaLayersDataTable(); Query query = db.CreateQuery("select [LayerId], [Name], [Description] from metaLayers"); table.Merge(db.Select(query)); return table; } catch (Exception ex) { throw new GeneralException("Could not retrieve map layers", ex); } }
/// <summary> /// Gets a GML map layer based on ID /// </summary> /// <param name="layerId">MapLayerId</param> /// <returns>GML</returns> public MapMetadata.metaLayersRow GetLayer(int layerId) { try { MapMetadata.metaLayersDataTable table = new MapMetadata.metaLayersDataTable(); Query query = db.CreateQuery("select [LayerId], [Gml], [GmlSchema], [Name], [FileName] from metaLayers where [LayerId] = @LayerId"); query.Parameters.Add(new QueryParameter("@LayerId", System.Data.DbType.String, layerId)); table.Merge(db.Select(query)); if (table.Rows.Count > 0) { return table[0]; } else { throw new GeneralException("Layer not found"); } } catch (Exception ex) { throw new GeneralException("Could not retrieve layer", ex); } }