初学咋练 解决不了 求大神啊
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using ESRI.ArcGIS.Geometry;
using ESRI.ArcGIS.Geodatabase;
using ESRI.ArcGIS.DataSourcesFile;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.ArcMap;
namespace MapControlApplication3
{
class DataOperator
{
//保存当前地图对象。
public IMap m_map;
//用于传入当前地图对象。
public DataOperator(IMap map)
{
m_map = map;
}
public ILayer GetLayerByName(String sLayerName)
{
//判断图层名或地图对象 是否为空。若为空,函数返回空。
if (sLayerName == "" || m_map == null)
{
return null;
}
//对地图对象中的所有图层进行遍历。若某一图层的名称与指定图层名相同,则返回该图层。
for (int i = 0; i < m_map.LayerCount; i++)
{
if (m_map.get_Layer(i).Name == sLayerName)
{
return m_map.get_Layer(i);
}
}
//若地图对象中的所有图层名均与指定图层名不匹配,函数返回空。
return null;
}
public DataTable GetContinentsNames()
{
//获取“Continents”图层,利用IFeatureLayer接口访问,并判断是否成功。若失败,
//函数返回空。
ILayer layer = GetLayerByName("Continents");
IFeatureLayer featureLayer = layer as IFeatureLayer;
if (featureLayer == null)
{
return null;
}
//调用IFeatureLayer接口的Seach方法,获取要素指针(IFeatureCursor)接口对象,
//用于在之后遍历图层中的全部要素,并判断是否成功获取第一个要素。若失败,函数返回空。
IFeatureLayer feature;
IFeatureCursor featureCursor = featureLayer.Search(null,false);
feature = featureCursor.NextFeature();
if (feature == null)
{
return null;
}
//新建DataTable类型对象,用于函数返回。
DataTable dataTable = new DataTable();
//新建DataColum类型对象,分别保存各个洲的序号和名称。设置完毕后,加入DataTable的列集合(Columns)中。
DataColumn dataColumn = new DataColumn();
dataColumn.ColumnName = "序号";
dataColumn.DataType = System.Type.GetType("System.Int32");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn();
dataColumn.ColumnName = "名称";
dataColumn.DataType = System.Type.GetType("System.String");
dataTable.Columns.Add(dataColumn);
//对图层中的要素进行遍历。每次获取一个要素,就关联DataTable的下一个DataRow,将要素在序号和名称字段上的值赋给DataRow的对应列中。
//在“Continents”图层属性表中,序号信息在第0个字段中,名称信息在第2个字段中。相关内容可以通过ArcMap对地图文档进行查看。
DataRow dataRow;
while (feature != null)
{
dataRow = dataTable.NewRow();
dataRow[0] = feature.get_Value(0);
dataRow[1] = feature.get_Value(2);
dataTable.Rows.Add(dataRow);
feature = featureCursor.NextFeature();
}
//返回设置好的数据表。
return dataTable;
}
}
}
错误 2 “ESRI.ArcGIS.Carto.IFeatureLayer”不包含“get_Value”的定义,并且找不到可接受类型为“ESRI.ArcGIS.Carto.IFeatureLayer”的第一个参数的扩展方法“get_Value”(是否缺少 using 指令或程序集引用?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 84 38 MapControlApplication3
错误 3 “ESRI.ArcGIS.Carto.IFeatureLayer”不包含“get_Value”的定义,并且找不到可接受类型为“ESRI.ArcGIS.Carto.IFeatureLayer”的第一个参数的扩展方法“get_Value”(是否缺少 using 指令或程序集引用?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 85 38 MapControlApplication3
错误 1 无法将类型“ESRI.ArcGIS.Geodatabase.IFeature”隐式转换为“ESRI.ArcGIS.Carto.IFeatureLayer”。存在一个显式转换(是否缺少强制转换?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 59 23 MapControlApplication3
错误 4 无法将类型“ESRI.ArcGIS.Geodatabase.IFeature”隐式转换为“ESRI.ArcGIS.Carto.IFeatureLayer”。存在一个显式转换(是否缺少强制转换?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 89 27 MapControlApplication3
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using ESRI.ArcGIS.Geometry;
using ESRI.ArcGIS.Geodatabase;
using ESRI.ArcGIS.DataSourcesFile;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.ArcMap;
namespace MapControlApplication3
{
class DataOperator
{
//保存当前地图对象。
public IMap m_map;
//用于传入当前地图对象。
public DataOperator(IMap map)
{
m_map = map;
}
public ILayer GetLayerByName(String sLayerName)
{
//判断图层名或地图对象 是否为空。若为空,函数返回空。
if (sLayerName == "" || m_map == null)
{
return null;
}
//对地图对象中的所有图层进行遍历。若某一图层的名称与指定图层名相同,则返回该图层。
for (int i = 0; i < m_map.LayerCount; i++)
{
if (m_map.get_Layer(i).Name == sLayerName)
{
return m_map.get_Layer(i);
}
}
//若地图对象中的所有图层名均与指定图层名不匹配,函数返回空。
return null;
}
public DataTable GetContinentsNames()
{
//获取“Continents”图层,利用IFeatureLayer接口访问,并判断是否成功。若失败,
//函数返回空。
ILayer layer = GetLayerByName("Continents");
IFeatureLayer featureLayer = layer as IFeatureLayer;
if (featureLayer == null)
{
return null;
}
//调用IFeatureLayer接口的Seach方法,获取要素指针(IFeatureCursor)接口对象,
//用于在之后遍历图层中的全部要素,并判断是否成功获取第一个要素。若失败,函数返回空。
IFeatureLayer feature;
IFeatureCursor featureCursor = featureLayer.Search(null,false);
feature = featureCursor.NextFeature();
if (feature == null)
{
return null;
}
//新建DataTable类型对象,用于函数返回。
DataTable dataTable = new DataTable();
//新建DataColum类型对象,分别保存各个洲的序号和名称。设置完毕后,加入DataTable的列集合(Columns)中。
DataColumn dataColumn = new DataColumn();
dataColumn.ColumnName = "序号";
dataColumn.DataType = System.Type.GetType("System.Int32");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn();
dataColumn.ColumnName = "名称";
dataColumn.DataType = System.Type.GetType("System.String");
dataTable.Columns.Add(dataColumn);
//对图层中的要素进行遍历。每次获取一个要素,就关联DataTable的下一个DataRow,将要素在序号和名称字段上的值赋给DataRow的对应列中。
//在“Continents”图层属性表中,序号信息在第0个字段中,名称信息在第2个字段中。相关内容可以通过ArcMap对地图文档进行查看。
DataRow dataRow;
while (feature != null)
{
dataRow = dataTable.NewRow();
dataRow[0] = feature.get_Value(0);
dataRow[1] = feature.get_Value(2);
dataTable.Rows.Add(dataRow);
feature = featureCursor.NextFeature();
}
//返回设置好的数据表。
return dataTable;
}
}
}
错误 2 “ESRI.ArcGIS.Carto.IFeatureLayer”不包含“get_Value”的定义,并且找不到可接受类型为“ESRI.ArcGIS.Carto.IFeatureLayer”的第一个参数的扩展方法“get_Value”(是否缺少 using 指令或程序集引用?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 84 38 MapControlApplication3
错误 3 “ESRI.ArcGIS.Carto.IFeatureLayer”不包含“get_Value”的定义,并且找不到可接受类型为“ESRI.ArcGIS.Carto.IFeatureLayer”的第一个参数的扩展方法“get_Value”(是否缺少 using 指令或程序集引用?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 85 38 MapControlApplication3
错误 1 无法将类型“ESRI.ArcGIS.Geodatabase.IFeature”隐式转换为“ESRI.ArcGIS.Carto.IFeatureLayer”。存在一个显式转换(是否缺少强制转换?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 59 23 MapControlApplication3
错误 4 无法将类型“ESRI.ArcGIS.Geodatabase.IFeature”隐式转换为“ESRI.ArcGIS.Carto.IFeatureLayer”。存在一个显式转换(是否缺少强制转换?) D:\袁\冯瑶-201220791\MapControlApplication3\MapControlApplication3\DataOperator.cs 89 27 MapControlApplication3
...全文
相关推荐
初学者练题开始------在POJ上(注:是百练)
对于初学者来说,练习编程题是提升技能的重要途径。POJ(Problem Online Judge)是一个流行的在线编程练习平台,尤其适合初学者进行“百练”来巩固基础和提高解题能力。
历经5年锤练--史上最适合初学者入门的Java基础视频
历经5年锤练--史上最适合初学者入门的Java基础视频JAVASE基础视频,并附带相应代码(5.02M)视频+代码共(6.26GB)36个压缩包
幼儿初学练字贴、临摹贴、田字格练字模板.doc
文档"幼儿初学练字贴、临摹贴、田字格练字模板.doc"是针对儿童早期汉字学习设计的一种教学工具,旨在帮助幼儿培养良好的书写习惯,奠定基础的汉字书写技巧。
C语言初学者练习用.docx
项目八:for循环输出三个整数,求平均值。这个项目是对for循环综合运用的练习,它要求学习者不仅要使用循环来输出三个整数,还要计算并输出这三个整数的平均值。
很好的3DMA教程适合初学者边学边练
本教程“很好的3DMA教程适合初学者边学边练”显然是针对那些希望踏入3D世界的新手,旨在帮助他们快速掌握3D Max的基础操作和技巧。教程内容可能涵盖以下几个方面:1.


