Eu ouvi falar de pessoas que usam a API Javascript ESRI para criar mapas da web com dados espaciais do SQL Server ou de outros RDBMSs. Pelo que sei, eles não estão usando o ArcGIS Server como um middleware. Em particular, ouvi recentemente uma empresa que usa um banco de dados SQL Server com tipos espaciais e o Entity Framework para vincular o banco de dados ao aplicativo, mas eles estão usando a API ESRI JS no front-end para renderizar os dados.
Isso é algo que realmente me interessa, pois trabalhei com o SQL Server, o Entity Framework, o ASP.Net e a API JS separadamente e não tenho acesso ao ArcGIS Server. Alguém sabe de uma arquitetura ou fluxo de trabalho específico simplesmente usando a API JS como um front end para um back-end não ESRI?
FeatureLayer
objetos? Agora estou trabalhando em um projeto usando o ArcGIS Online e a API JS. O problema é que não posso fazer nenhum processamento no AGOL, portanto, qualquer cálculo deve ser feito no lado do cliente. Estou trabalhando com apenas algumas camadas, mas algumas delas podem ter centenas de milhares de recursos.Respostas:
Apenas para adicionar mais detalhes, ao criar um serviço para retornar JSON do SQL Server, você usaria o objeto de coleção de recursos para criar uma nova camada no mapa. No javascript, você deve pegar os atributos e o componente espacial retornados do seu serviço e formatá-lo no formato de geometria Esri para criar a coleção de recursos.
Quanto mais próximo o servidor retornar um formato como o formato Esri, menos será necessário analisar o cliente. JSON é muito fácil de analisar quando você pega o jeito.
A coleção de recursos exibida seria uma camada gráfica no mapa. Você pode ter um Esri ou outro mapa de base público embaixo. Um problema que você terá é o desempenho quando começar a abordar milhares de recursos - principalmente se eles tiverem muitos vértices por geometria. Os serviços de recursos no servidor ArcGIS retornam no máximo 1000 registros por padrão.
Quanto aos cálculos, você deve fazê-los com SQL (possui extensões espaciais) no banco de dados antes de devolvê-los ao cliente. Se você estiver tentando exibir centenas de milhares de recursos, precisará usar o Geoserver ou o UMN Mapserver e devolvê-los como WMS ou um serviço lado a lado - não é possível exibir tantos gráficos no navegador.
Confira este exemplo em que uma camada é criada a partir de um feed de dados do Flickr. Nenhum servidor ArcGIS envolvido - http://developers.arcgis.com/en/javascript/jssamples/fl_featureCollection.html
fonte
Como usar os dados espaciais do SQL com o WCF ODATA Spatial pode ser uma maneira. Como o OData foi desenvolvido após as especificações REST da Esri e com mais envolvimento com a Microsoft, ele pode ser um pouco mais maduro.
fonte