Как взять объект слоя?

0 голосов
спросил 26 Июнь, 12 от Kuanar (560 баллов) в категории Программные продукты Esri
Здравствуйте! Как можно в ASP.NET написать код для взятия объекта слоя FeatureLayer и работать с ним? Например как в C#:
  IFeatureLayer featureLayer = (IFeatureLayer)axMapControl1.Map.get_Layer(2);
              

2 Ответы

0 голосов
ответил 26 Июнь, 12 от Kuanar (560 баллов)
Пожалуйста помогите кто-нибудь, укажите хотя бы ссылки, примеры. Ничего не могу сделать, не знаю даже как делать и что делать. 
0 голосов
ответил 27 Июнь, 12 от Kuanar (560 баллов)
Нашел ответ:
if (!MapResourceManager1.Initialized)
                MapResourceManager1.Initialize();
            ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer.MapResourceLocal mrl = (ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer.MapResourceLocal)
                MapResourceManager1.GetResource(0);
            IMapServer ms = (IMapServer)mrl.ServerContextInfo.ServerContext.ServerObject;
            IMapServerObjects2 mso = (IMapServerObjects2)ms;
            IMap map = mso.get_Map(ms.DefaultMapName);
            IFeatureLayer2 layer = (IFeatureLayer2)map.get_Layer(2);
            IEnvelope envelope = new EnvelopeClass();
            ISpatialFilter spatialFilter = new SpatialFilterClass();
            spatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelIntersects;
            IFeatureCursor fcursor = layer.Search(spatialFilter, true);
            IFeature ipfeat;

            string s = Map1.MapResourceManagerInstance.ResourceItems[0].LayerDefinitions["2"].Name;
            TreeView1.Nodes.Add(new TreeNode(s));
            for (int i = 0; i < fcursor.Fields.FieldCount; i++)
            {
                ipfeat = fcursor.NextFeature();
                TreeView1.Nodes[0].ChildNodes.Add(new TreeNode(ipfeat.get_Value(2).ToString(), ipfeat.get_Value(0).ToString()));
            }
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...