如何获取地图上一个表中所有图元的信息?
答:代码如下:
MapInfo.Mapping.FeatureLayer fl = (MapInfo.Mapping.FeatureLayer)mapControl1.Map.Layers["worldcap"];
MapInfo.Data.Table t = fl.Table;
//MIDataReader提供了从 MapInfo 数据提供方处读取行的前向数据流的手段
MIDataReader tr;
//MIConnection 表示与 Catalog 的连接
MIConnection con = new MIConnection();
//MICommand 提供了必要的接口来根据 MapInfo Data Provider 执行 SQL 命令
//MICommand 创建 MIDataReader 和 MIScrollableReader 实例
//分别通过 ExecuteReader 和 ExecuteScrollableReader 方法来获取数据
MICommand tc = con.CreateCommand();
tc.CommandText = "select * from " + t.Alias ;
con.Open();
//ExecuteReader执行对 Connection 的 CommandText,并使用其中一个 CommandBehavior 值生成 MIDataReader
tr = tc.ExecuteReader() ;
//MIDataReader.Read 如果有多个行则返回 true,否则返回 false
int i=0;
while (tr.Read())
{
//获得指定字段的字符串值
listView1.Items.Add(tr.GetString(1));
}
//Cancel 尝试取消当前命令的执行
tc.Cancel();
//Dispose 处置 MICommand 对象
tc.Dispose();
//tr.Close关闭数据读取器并释放资源,con.Close关闭连接
tr.Close() ;
con.Close();
获取地图上一个表中所有图元的信息
最新推荐文章于 2023-12-09 22:05:30 发布