CityMaker7 开发常见异常记录

一、数据源连接失败

异常描述:使用CityMaker Server服务进行查询或其他操作时,如featureclas.search(null,true),会抛出如下异常信息:

捕捉到COMException
[FdeException] Code: -2017; Message: to connect datasource failure; NativeCode: 0;
数据源连接建立方式:

public IDataSource FdbDataSource(IConnectionInfo connInfo)
{
       IDataSourceFactory dsFac = new DataSourceFactory();
       return dsFac.OpenDataSource(connInfo);
}

问题解决:

经反复测试和跟踪发现,使用IDataSource获取数据源连接后是不能断开的,除非要结束整个应用程序。在整个应用程序中都不能调用IDataSource.Close()方法断开连接,即使通过IConnectionInfo重新构建连接也是行不通的,仍然会抛出相应异常。

在使用后通过Marshal.RealseComObject方法释放IDataSource对象是不会引发异常的,只要不调用Close就ok了。

if (ds != null)
{
      Marshal.ReleaseComObject(ds);
      ds = null;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值