FeatureClass.Search(IQuery Filter,bool Recycling)参数说明

本文深入探讨了在编程过程中,如何通过pFeatureCursor存储所有符合条件的Feature对象,并解释了在进行Feature操作时,局部变量如何影响Feature属性。同时,阐述了Recycling参数在内存管理中的作用,以及在不同场景下选择True或False的影响。进一步解析了Filter接口的应用,包括IQueryFilter和ISpatialFilter的使用,旨在优化数据筛选效率。

1.pFeatureCursor存储的是所有符合条件的Feature对象的引用。所以在我们对Feature进行操作的时候,即使我们定义的是一个局部变量,也会改变Feature的属性


2.Recycling的意思是回收,参数Recycling为True的时当执行这个方法IFeature pFeature=pFeatureCursor.NextFeature()上一条记录的值在内存中所占的地址就会被销毁回收,为False的时候当执行这个方法IFeature pFeature=pFeatureCursor.NextFeature()上一条记录的值依然存在在内存中。


Filter有两个接口:

IQueryFilter pFilter = new QueryFilterClass();

ISpatialFilter pFilter = new SpatialFilterClass();

System.ArgumentNullException: Value cannot be null. Parameter name: field at Beisen.Common.HelperObjects.ArgumentHelper.AssertNotEmpty(String value, String paramName) in f:\MSBuildWorkSpace\dll.Beisen.Common.Release\HelperObjects\ArgumentHelper.cs:line 126 at Beisen.SearchV3.DSL.Filters.TermsFilter.Validate(QueryContext context) at Beisen.SearchV3.DSL.BaseFilter.Rewrite(QueryContext context) at Beisen.SearchV3.Util.ElasticHelper.Rewrite(IList`1 filters, QueryContext context) at Beisen.SearchV3.DSL.Filters.BooleanFilter.Rewrite(QueryContext context) at Beisen.SearchV3.Util.ElasticHelper.Rewrite(IList`1 filters, QueryContext context) at Beisen.SearchV3.DSL.ElasticQuery.Rewrite(QueryContext context) at Beisen.SearchV3.Commands.SearchCommand.CreateRestRequest() at Beisen.SearchV3.Commands.Command`1.ToRestRequest() at Beisen.SearchV3.Providers.ElasticSearchRestClient.<>c__DisplayClass2_0.<Search>b__0(TraceSession traceSession) at Beisen.Infrastructure.Trace.TraceLogHelper.Trace[T](Func`2 func, String name) at Beisen.Steppe.Index.SteppeIndexRetry.<>c__DisplayClass6_0.<Search>b__0() at Beisen.Steppe.Helper.RetryHelper.Execute(Action action, Stopwatch watch) at Beisen.Steppe.Index.SteppeIndexRetry.Search(DatabaseMetadata databaseMetadata, TableMetadata tableMetadata, Int32 tenantId, SearchRequest searchRequest, Stopwatch watch) at Beisen.Steppe.SteppeDatabase.Search(Guid tableId, Int32 tenantId, SearchRequest searchRequest) at Beisen.MultiTenant.DataAccess.WrapperBridgeV2.GetEntityIdListByScrollV2(MetaObject metaObject, IFilter filter, IQuery query, Dictionary`2 sortFields, String scrollId, Int32 scrollSearchSize, Int32 scrollReturnSize) in E:\JenkinsAgent\workspace\MultiTenantV7.BizData.ESB\Library\Beisen.MultiTenant.BizData.Services\DataAccess\WrapperBridge\WrapperBridgeV2.cs:line 1751
最新发布
03-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值