转载连接:http://www.cnblogs.com/willwayer/archive/2011/04/29/2032491.html
1、IFeatureCursor 游标查询后,遍历删除
2、更新游标删除IFeatureCursor.DeleteFeature()
3、ITable.DeleteSearchedRows删除
4、 IDataset.Workspace.ExecuteSQL
一、
1.
private void Delete1(IFeatureClass PFeatureclass)
{
IQueryFilter pQueryFilter = new QueryFilterClass();
pQueryFilter.WhereClause = " objectID<= " + DeleteNum;
IFeatureCursor pFeatureCursor = PFeatureclass.Search(pQueryFilter, false );IFeature pFeature = pFeatureCursor.NextFeature();
while (pFeature != null )
{
pFeature.Delete();
pFeature = pFeatureCursor.NextFeature();
}
System.Runtime.InteropServices.Marshal.ReleaseComObject(pQueryFilter);
}
private
void
Delete2(IFeatureClass PFeatureclass)
{
IQueryFilter pQueryFilter =
new
QueryFilterClass();
pQueryFilter.WhereClause =
"objectID<="
+ DeleteNum;
IFeatureCursor pFeatureCursor = PFeatureclass.Update(pQueryFilter,
false
);
IFeature pFeature = pFeatureCursor.NextFeature();
while
(pFeature !=
null
)
{
pFeatureCursor.DeleteFeature();
pFeature = pFeatureCursor.NextFeature();
}
System.Runtime.InteropServices.Marshal.ReleaseComObject(pQueryFilter);
}
|
3.
private void Delete4(IFeatureClass PFeatureclass)
4.
private void Delete4(IFeatureClass PFeatureclass)
二、
1、
2、
IFeatureLayer pFeatureLayer = axMapControl1.Map.get_Layer(0) as IFeatureLayer;
3、
测试方法
第一次时间(单位ms)
第一次时间(单位ms)
1
5214ms
5735ms
2
299ms
290Ms
3
59ms
28ms
4
26ms
26ms
三、
1、
3、
4、