ArcEngine 读取大数据量的IFeatureClass或ITable分页进行显示

ArcEngine已经实现打开属性表功能,但是如果记录达到上万条的话,就非常慢,影响用户体验。

ArcEngine 读取大数据量的IFeatureClass或ITable分页进行显示_第1张图片

IQueryFilterDefinition3接口可以一次查询几百条数据,然后下次可以接着往下获取记录。

参考代码:IQueryFilterDefinition3 queryFilterDef = (IQueryFilterDefinition3)queryFilter;
         int count = FeatureLayer.FeatureClass.FeatureCount(queryFilter);
         int offset;
         int rowcount;
         queryFilterDef.PostfixClause = "order by OBJECTID asc"; //排序
         queryFilterDef.SetPaginationClause(0, 200);

然后下次第一个参数设置201,以此类推。可以将此数值参数化 

 

你可能感兴趣的:(ArcEngine)