zoukankan      html  css  js  c++  java
  • 拓扑检查的补充(ArcEngine)

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

    'pFeatureLayer:参与拓扑的要素类的图层
    'pGeo:为新建要素关联的图形
    'StartEditOperation
        Try
             
    Dim pFeat As IFeature = pFeatureLayer.FeatureClass.CreateFeature         ——此句引发异常
          pFeat.Shape 
    = pGeo
          pFeat.Store()
           
    'StopEditOperation()
         
    Catch ex As Exception
           
    'AbortEditOperation()
      End Try           

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

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


        
    Public Function InitializeApplication() As Boolean

           '……
           licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB)

            licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeEngine)
           
           '……
        End Function
  • 相关阅读:
    codeforces 501 C,D,E
    bzoj 3172 单词 ac自动机|后缀数组
    HDU2459 后缀数组+RMQ
    POJ 3294 二分找超过一半字符串中存在的子串
    头文件
    python爬取文本
    python爬取图片
    NEW
    dsu on tree 练习题
    lzz分块+莫队
  • 原文地址:https://www.cnblogs.com/lauer0246/p/1081786.html
Copyright © 2011-2022 走看看