English

FAQ: Why can I not access ArcObjects 10.1 remotely via a .NET WCF web service?

Question

Why can I not access ArcObjects 10.1 remotely via a .NET WCF web service?

Answer

It is common to access ArcObjects remotely by using a local Distributed Component Object Model (DCOM) connection to a Microsoft Windows Communication Foundation (WCF) web service. Below is an example of code that may be used in this workflow.

IGISServerConnection gisServerConnection=new GISServerConnection();
gisServerConnection.Connect("myServer");
IServerObjectManager serverObjectManager=gisServerConnection.ServerObjectManager;
IServerContext serverContext=serverObjectManager.CreateServerContext("RedlandsMap", "MapServer");
IServerObject serverObject=serverContext.ServerObject;
IMapServer mapServer=serverObject as IMapServer;
Debug.Print(mapServer.DefaultMapName);
serverContext.ReleaseContext();

After migrating to ArcObjects 10.1, the above code no longer works as expected. Because DCOM support was deprecated after ArcObjects 10.0, ArcObjects is no longer accessible remotely via DCOM connections.

Instead, use Server Object Extensions (SOEs) or custom geoprocessing services.

Related Information