Select to view content in your preferred language

service dynamic datasource

697
1
10-19-2010 08:30 AM
stefanschlaefli
Regular Contributor
Hello Everyone
I'm building a client application (ESRI Silverlight API) that displays data out of SQL Server. The client allows to select a table in a database of choice which then should be mapped. How can I achieve this with ArcGIS Server? I first thought of building a SOE that takes the db-name and the tablename as input and then changes the datasource of the maplayer in the Server Object Configuration. This technically works, but the problem is that the service must be unpooled otherwise all other users have their layer datasources changed all the time. And unpooled services don't support the REST interface. And because of that I can't use it because I need REST interfaces for the SOE and the service URL's in order to use them with the Silverlight API. What other options do I have with ArcGIS Server and the Silverlight API?
Actually I try to achieve the same that MapIT does: provide REST endpoints to spatial tables in SQLServer. Is this not possible with ArcGIS Server?

Thanks for your suggestions,
Stefan
0 Kudos
1 Reply
RichardWatson
Deactivated User
The vision for ArcGIS Server is to publish pooled map services for consumption by web users.  The map services can be extended via an SOE which can also augment the ESRI SOAP and REST endpoints.

It is important to understand what ESRI is doing in 10.1 because it provides insights.  In 10.1 the ability to publish non-pooled services is eliminated.  In addition the set of APIs, i.e. interfaces which can be accessed by the SOE is greatly restricted.  My hypothesis is as follows:

1) ESRI does not want you making changes to the map service that might affect other users
2) ESRI is moving server to 64 bit only and they want to minimize the set of ArcObjects that they have to make work in this context

The reason I mention the above is that the ability of ArcGIS Server to be a platform for providing general web services is being diminished.

What I think that is that if you want general web services then you have to use ArcEngine and do it yourself.  For example, we want to provide a web service which is able to create a new SDE version, place features in it, and then reconcile.  How would we do that using ArcGIS Server in 10.1?

I mention 10.1 because we want to write software which will work in the next release.
0 Kudos