예제 #1
0
        /// <summary>
        /// Deletes the anno features in feature layer.
        /// </summary>
        /// <param name="featureLayer">The feature layer.</param>
        public static void DeleteAnnoFeaturesInFeatureLayer(IFeatureLayer featureLayer)
        {
            if (featureLayer == null)
            {
                return;
            }
            IFeatureClass  featureClass   = featureLayer.FeatureClass;
            IDataset       dataset        = featureClass as IDataset;
            IWorkspace     pWorkspace     = dataset.Workspace;
            IWorkspaceEdit pWorkspaceEdit = pWorkspace as IWorkspaceEdit;

            pWorkspaceEdit.StartEditing(true);
            pWorkspaceEdit.StartEditOperation();

            IWorkspaceProperties2 workspaceProperties2 = (IWorkspaceProperties2)pWorkspace;
            //判断workspace是否可以执行SQL语句
            IWorkspaceProperty canExecuteSqlProperty =
                workspaceProperties2.get_Property(esriWorkspacePropertyGroupType.esriWorkspacePropertyGroup,
                                                  (int)esriWorkspacePropertyType.esriWorkspacePropCanExecuteSQL);

            if (canExecuteSqlProperty.IsSupported)
            {
                //ExecuteSQL删除feature
                pWorkspace.ExecuteSQL("delete  from " + featureClass.AliasName + " where objectid >=0");
            }
            pWorkspaceEdit.StopEditOperation();
            pWorkspaceEdit.StopEditing(true);
        }
예제 #2
0
        public static void ClearFeaturesInFeatureLayer(IFeatureLayer featureLayer)
        {
            if (featureLayer == null)
            {
                return;
            }
            IFeatureClass         featureClass         = featureLayer.FeatureClass;
            IDataset              dataset              = featureClass as IDataset;
            IWorkspace            pWorkspace           = dataset.Workspace;
            IWorkspaceProperties2 workspaceProperties2 = pWorkspace as IWorkspaceProperties2;
            //判断workspace是否可以执行SQL语句
            IWorkspaceProperty canExecuteSqlProperty =
                workspaceProperties2.Property[
                    esriWorkspacePropertyGroupType.esriWorkspacePropertyGroup,
                    (int)esriWorkspacePropertyType.esriWorkspacePropCanExecuteSQL];

            if (canExecuteSqlProperty.IsSupported)
            {
                //ExecuteSQL删除feature
                pWorkspace.ExecuteSQL("delete  from " + featureClass.AliasName + " where objectid >=0");
            }
        }