Data source-specific APIs 编程中的常用概念

首先介绍几个概念:

Server Objects

一个服务器对象就是一个粗粒的ArcObject

l  MapServer展示地图文档

l  GeocodeServer展示定位器

 

能从一个服务器对象获得其它相关的对象:

MapServer –>Map àLayer

 

Server context

1)可以把Server context 是一个进程 (ArcSOC.exe)

2)作为访问server object ArcObjects的入口

3)需要小心地管理Server Context的生命周期

 

 

服务器对象的生命周期

普通步骤(COM应用程序)

1.  连接

2.  创建一个 context

3.  访问 server object

4.  释放 context

 

服务器对象存活在上下文中。

调用CreateServerContext来获得一个包含专门服务器对象的服务器上下文。

只要持有服务器上下文,服务器对象和所有相关的其它对象就是活动的,可以使用。

一旦释放了服务器上下文,就不能再使用服务器对象或从上下文中获得任何其它对象。

在池式的服务器对象/上下文情况下,即使释放了服务器上下文,服务器也将处理其他用户/会话的服务器对象/上下文请求。

 

Context之间传递对象

1)一个Context不可以直接使用在另一个Context中创建的对象

2)必须序列化对象

3)对象必须实现IPersistStream接口 (serializable)

4)使用 SaveObjectLoadObject方法

 

geocode servers context中保存点对象

Dim sPoint As String = geocodeContext.SaveObject(geocodedPoint)

 

map’s server context中装载点对象

 Dim mapPoint As IPoint = mapContext.LoadObject(sPoint)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值