Eu tenho uma tabela de servidor sql com dados espaciais geográficos. Um exemplo de linha seria (com nomes de colunas):
type: streetline
code: 231001
geog: 0xE6100000011 ........
Centroid 0xE61000000C.......
geom: 0xE6100000011 ........
Estou usando o C # com MVC3 para desenhar as formas acima no mapa do folheto. Estou buscando os dados sql acima em uma tabela de dados. Usando a função sql "ToString ()" na coluna "geom", obtenho o seguinte:
"LINESTRING (-1.131510412 52.65531, -1.13286 52.65559)",
"POLYGON ((-1.1116360 52.6409953, -1.1116683 52.6413, -1.11146723 52.641317, -1.11133263 52.6413572, -1.1113059))",
A questão é como converter os itens acima em GeoJSON para poder plotar no mapa do folheto. Aqui está um exemplo da saída esperada (GeoJSON) que eu quero:
var geojsonFeature = {
"type": "Feature",
"properties": {
"name": "Coors Field",
"amenity": "Baseball Stadium",
"popupContent": "This is where the Rockies play!"
},
"geometry": {
"type": "Point",
"coordinates": [-104.99404, 39.75621]
}
};
c#
geojson
sql-server
json
moh
fonte
fonte
Você pode usar o GeoJSON.Net . Estou planejando trabalhar com isso. Vou informá-lo quando for útil.
fonte
Você pode resolver isso facilmente com algo como (código Javascript)
Tentei manter isso o mais simples possível, para que você pudesse migrá-lo facilmente para o idioma desejado. Observe que, mesmo que isso seja difícil, o problema é resolvido. Não é recomendável fazer a análise dessa maneira.
jsfiddle: https://jsfiddle.net/e78cgogo/32/
fonte
Se você estiver usando o Entity Framework, poderá tentar GeoJSON4EntityFramework . Eu apenas comecei a usá-lo, e é bem legal. Aqui está um exemplo, usando um
DbGeometry
campo chamadoBoundaries
:Bem simples.
fonte
O carregamento e a exibição do GeoJSON com o Leaflet foram bem detalhados aqui: http://leafletjs.com/examples/geojson.html
fonte