Пример #1
0
        /// <summary>
        /// Metodo che restituisce una Feature Class dato un Server Object e il Url del Service Layer
        /// </summary>
        /// <param name="serverObjectHelper">Server Object</param>
        /// <param name="URLServiceLayer">URL Service Layer</param>
        /// <returns></returns>
        internal static IFeatureClass RicavaFCDaURLServiceLayer(IServerObjectHelper serverObjectHelper, string URLServiceLayer)
        {
            IFeatureClass fc;

            try
            {
                // Ricavo il numero posizionale del Service Layer
                int numPosizionale = Convert.ToInt32(System.IO.Path.GetFileName(URLServiceLayer));

                IMapServer4 mapServer      = (IMapServer4)serverObjectHelper.ServerObject;
                string      nomeMapService = mapServer.DefaultMapName;

                // Use IMapServerDataAccess to get the data
                IMapServerDataAccess dataAccess = (IMapServerDataAccess)mapServer;

                // Accedo alla Feature Class sorgente
                fc = (IFeatureClass)dataAccess.GetDataSource(nomeMapService, numPosizionale);
            }
            catch (System.Exception)
            {
                throw;
            }

            return(fc);
        }
        private void RicavaInfoFc()
        {
            try
            {
                IMapServer4 mapServer      = (IMapServer4)serverObjectHelper.ServerObject;
                string      nomeMapService = mapServer.DefaultMapName;

                // Use IMapServerDataAccess to get the data
                IMapServerDataAccess dataAccess = (IMapServerDataAccess)mapServer;
                // Get access to the source feature class.
                fcClienti = (IFeatureClass)dataAccess.GetDataSource(nomeMapService, 0);
                fcFiliari = (IFeatureClass)dataAccess.GetDataSource(nomeMapService, 1);

                logger.LogMessage(ServerLogger.msgType.infoDetailed, "Fc", 8000, "SOE Geomarketing GiancaGIS: FC ricavati");
            }
            catch (Exception errore)
            {
                logger.LogMessage(ServerLogger.msgType.error, "Construct", 8000, $@"SOE GeoMarketing GiancaGIS: {errore.Message}");
            }
        }