What is the difference between searching a featurelcass versus a featurelayer?
2011-03-21 09:00
429 查看
What is the difference between searching a featurelcass versus a featurelayer?
IFeatureClass.Search:
Returns an object cursor that can be used to fetch feature objects selected by the specified query.
IFeatureLayer2.Search:
Use this method to return a read-only cursor of the layer’s features.
There is ‘Search; method in both IFeatureLayer and IFeatureClass Interface. Both returns cursor based on search criteria(标准、尺度). What is difference between these?. This question is obivious for a novice(新手). If you have gone through Help documentation you can figure out easily. Else here is a straight answer
They are the same unless you have a definition query assigned to the layer. In that case the FeatureLayer.Search will only return features that also meet the definition query criteria, while FeatureClass.Search will return all features regardless of definition query.
This FeatureLayer Search method will not work on joined fields. If the FeaureLayer has any joins, you should use the IGeoFeatureLayer::SeachDisplayFeatures method instead.
You cannot use the cursor returned by IFeatureLayer::Search to update features, instead use IFeatureClass::Update.
-----------------------------------------------------------------------------------------------------------------------------------------------
1、FeaturLayer是加载在地图文档中的数据层,只是要素类的表现形式;FeatureClass是一组空间实体的集合,在数据表中存储了统一的属性和行为,每一个FeatureClass都有一个Geometry类型,如shp文件;
2、IFeatureLayer继承自ILayer,IFeatureClass继承自IClass;
3、FeatureLayer可以创建自己的对象,而FeatureClass不行:
IFeatureClass=IFeatureLayer.FeatureClass 或者
IFeatureClass=IFeatureWorkspace.openFeatureClass("xx")
IFeatureClass.Search:
Returns an object cursor that can be used to fetch feature objects selected by the specified query.
IFeatureLayer2.Search:
Use this method to return a read-only cursor of the layer’s features.
There is ‘Search; method in both IFeatureLayer and IFeatureClass Interface. Both returns cursor based on search criteria(标准、尺度). What is difference between these?. This question is obivious for a novice(新手). If you have gone through Help documentation you can figure out easily. Else here is a straight answer
They are the same unless you have a definition query assigned to the layer. In that case the FeatureLayer.Search will only return features that also meet the definition query criteria, while FeatureClass.Search will return all features regardless of definition query.
This FeatureLayer Search method will not work on joined fields. If the FeaureLayer has any joins, you should use the IGeoFeatureLayer::SeachDisplayFeatures method instead.
You cannot use the cursor returned by IFeatureLayer::Search to update features, instead use IFeatureClass::Update.
-----------------------------------------------------------------------------------------------------------------------------------------------
1、FeaturLayer是加载在地图文档中的数据层,只是要素类的表现形式;FeatureClass是一组空间实体的集合,在数据表中存储了统一的属性和行为,每一个FeatureClass都有一个Geometry类型,如shp文件;
2、IFeatureLayer继承自ILayer,IFeatureClass继承自IClass;
3、FeatureLayer可以创建自己的对象,而FeatureClass不行:
IFeatureClass=IFeatureLayer.FeatureClass 或者
IFeatureClass=IFeatureWorkspace.openFeatureClass("xx")
相关文章推荐
- What is the difference betweeninterrupt-driven I/O versus pollingI/O
- What is the difference between symbolic link and hard link?
- What is the difference between extensibility and scalability?
- What is the difference between .NET 1.1,2.0,3.0,3.5 and 4.0
- macro与inline的区别 What is the difference between macro and inline?
- What is the difference between the three mentioned verbs?
- What is the difference between SSL, TLS, and HTTPS?
- What is the difference between supervised learning and unsupervised learning?
- Design: What is the basic difference between precast and prefabricated structures?
- What is the difference between JSP and servlets?
- What is the difference between DHTML and the DOM?
- In Linux, what is the difference between “buffers” and “cache” reported by the free command?
- what is the difference between inner join and outer join
- What is the difference between Rack-local map task
- What is the difference between objectForKey and valueForKey?
- What is the difference between Simple, Advanced and Parameter data sets?
- whats is the difference between train, validation and test set, in neural networks?
- What is the difference between routine , method , procedure , function ? please explain it with example?
- What is the difference between distributed and parallel processing operating system?
- php中each和print的区别(What is the difference between echo and print?)