MapXtreme 2005 基础代码

1、遍历所有要素
foreach(MapInfo.Data.Feature f in _FeatureLayer.Table)
{
// do something with the Feature
}
2、点查询
MapInfo.Geometry.DPoint point = new MapInfo.Geometry.DPoint(-100, 40);

MapInfo.Data.MIConnection connection = new MapInfo.Data.MIConnection();
connection.Open();
MapInfo.Data.MICommand command = connection.CreateCommand();

command.CommandText = "Select * from USA where MI_Point(@x, @y, @cs) within obj";
command.Parameters.Add("@x", point.x);
command.Parameters.Add("@y", point.y);
command.Parameters.Add("@cs", this.mapControl1.Map.GetDisplayCoordSys());

command.Prepare();
MapInfo.Data.IResultSetFeatureCollection irfc = command.ExecuteFeatureCollection();

command.Dispose();
connection.Close();
3.返回所有列
MapInfo.Data.Table USATable= MapInfo.Engine.Session.Current.Catalog.GetTable("usa");

string[] s = new string[1];
s[0] = "*";

MapInfo.Data.SearchInfo si = MapInfo.Data.SearchInfoFactory.SearchWhere("State = 'NY'");
si.QueryDefinition.Columns = s;

MapInfo.Data.IResultSetFeatureCollection irfc = MapInfo.Engine.Session.Current.Catalog.Search(USATable.Alias, si);

int count = 0;
int ColCount = USATable.TableInfo.Columns.Count;

foreach (MapInfo.Data.Feature f in irfc)
{
count = 0;
while (count < ColCount)
{
MapInfo.Data.Column c = irfc.Columns[count];
this.listBox1.Items.Add(f[c.ToString()]).ToString();
count++;
}
}
4、返回查询结果
MapInfo.Data.Table USATable= MapInfo.Engine.Session.Current.Catalog.GetTable("usa");

string[] s = new string[1];
s[0] = "*";

MapInfo.Data.SearchInfo si = MapInfo.Data.SearchInfoFactory.SearchWhere("State = 'NY'");
si.QueryDefinition.Columns = s;

MapInfo.Data.IResultSetFeatureCollection irfc = MapInfo.Engine.Session.Current.Catalog.Search(USATable.Alias, si);

int count = 0;
int ColCount = USATable.TableInfo.Columns.Count;

foreach (MapInfo.Data.Feature f in irfc)
{
count = 0;
while (count < ColCount)
{
MapInfo.Data.Column c = irfc.Columns[count];
this.listBox1.Items.Add(f[c.ToString()]).ToString();
count++;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值