3 votos

cómo conectarse a ArcGIS server con c#

Me gustaría conectarme al servidor de ArcGIS, pero tengo un mensaje de error "la referencia de un objeto no se establece a una instancia de un objeto". Tengo muchos ejemplos:

string serverName = "adresse";
string instance = "ArcGIS/services";
// Using the ADF Common API data source implementation of the ArcGIS Server Web Service API
    string serviceNameAndType = "nameservice/MapServer";
    ESRI.ArcGIS.ADF.ArcGISServer.MapServerProxy agsSoapMapServerProxy = new
ESRI.ArcGIS.ADF.ArcGISServer.MapServerProxy("http://" + serverName + "/" + instance + "/" + serviceNameAndType);

o

 ESRI.ArcGIS.ADF.Identity identity = new ESRI.ArcGIS.ADF.Identity("usernamer", "password", "domain");
 ESRI.ArcGIS.ADF.Connection.AGS.AGSServerConnection agsconnection;
agsconnection = new ESRI.ArcGIS.ADF.Connection.AGS.AGSServerConnection("nomserver", identity);
 agsconnection.Connect();
 IServerObjectManager SOM = agsconnection.ServerObjectManager;

o

string mapServiceUrl = "http://servername/ArcGIS/services/servicename/MapServer";

ESRI.ArcGIS.ADF.ArcGISServer.MapServerProxy mapServerProxy = new ESRI.ArcGIS.ADF.ArcGISServer.MapServerProxy(mapServiceUrl);

Espero que alguien pueda ayudarme :)

1voto

Jason Z Puntos 111

Lo más probable es que su problema esté relacionado con los permisos de los usuarios. Hay varias cosas que debe asegurarse para poder conectarse a ArcGIS Server:

  • El nombre de usuario que intenta utilizar debe ser miembro del grupo agsadmin
  • Si se trata de una aplicación de escritorio, el usuario con el que se ha iniciado la sesión (si es diferente del usuario anterior) también debe ser miembro de agsadmin.
  • Si se trata de una aplicación web, el usuario de ArcGISWebServices debe ser miembro de agsadmin. Además, el usuario con el que se ejecuta la aplicación web (Vista, 7 y server 2003+ utilizan NETWORK SERVICE) debe ser miembro de agsadmin. Alternativamente, puede configurar un nuevo grupo de aplicaciones y configurarlo para que se ejecute bajo el usuario con el que está intentando conectarse, asegurándose de que ese usuario es miembro de agsadmin.

Los dos últimos puntos son necesarios porque DCOM en realidad no suplanta al usuario que le proporcionas, sigue utilizando la información del usuario del proceso subyacente. Hay un método algo enrevesado para suplantar adecuadamente a un usuario para el uso de DCOM, sin embargo no puedo recordar si alguna vez lo hice funcionar correctamente.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X