Chinaunix首页 | 论坛 | 博客
  • 博客访问: 722010
  • 博文数量: 33
  • 博客积分: 10012
  • 博客等级: 上将
  • 技术积分: 1365
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-15 09:11
文章分类
文章存档

2009年(10)

2008年(23)

我的朋友

分类:

2009-01-06 17:11:30

问题

    外地出差的同事小周反映图形系统编辑时报"Objects in this class cannot be updated outside an edit session"错误,这个问题我网上搜了下被我找出原因来了,呵呵!属于程序的问题。

    当一个要素类参与了一个拓扑(或Geometry  Network)之后,对该要素类执行创建要素、修改要素图形或属性时,可能会出现这个异常:'Objects in this class cannot be updated outside an edit session'

原因
    这是由于ArcEngine应用程序中使用的 License权限不足引起的。在ArcEngine 应用程序里面通过ArcSDE进行编辑需要License'ArcGIS Engine Enterprise Geodatabase',或ArcEditor或ArcInfo。

 解决办法
    在ArcEngine应用程序的LicenseInitializer.InitializeApplication中,为程序增加Geodatabase的编辑权限。


    
Public Function InitializeApplication As Boolean

       '……
       licenseStatus = CheckOutLicensesesriLicenseProductCode.esriLicenseProductCodeEngineGeoDB

        licenseStatus = CheckOutLicensesesriLicenseProductCode.esriLicenseProductCodeEngine
       
       '……
    End Function

 由于同事在外地出差,程序没法修改,删除拓扑规则了事,不过这个bug还是要提交的。

阅读(2778) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~