This document is archived and information here might be outdated.  Recommended version.


IClass Interface (ArcObjects .NET 10.5 SDK)
ArcObjects Library Reference (GeoDatabase)  

IClass Interface

Provides access to members that return information about and manage the class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Members

Description
Method AddField Adds a field to this object class.
Method AddIndex Adds an index to this object class.
Read-only property CLSID The GUID for the COM Class (CoClass) corresponding to instances of this object class.
Method DeleteField Deletes a field from this object class.
Method DeleteIndex Deletes an index from this object class.
Read-only property EXTCLSID The GUID for the COM Class (CoClass) corresponding to the class extension for this object class.
Read-only property Extension The extension for this object class.
Read-only property ExtensionProperties The extension properties for this object class.
Read-only property Fields The fields collection for this object class.
Method FindField The index of the field with the specified name.
Read-only property HasOID Indicates if the class has an object identity (OID) field.
Read-only property Indexes The indexes collection for this object class.
Read-only property OIDFieldName The name of the field corresponding to the OID.

CoClasses that implement IClass

CoClasses and Classes Description
AttributedRelationshipClass Esri Attributed Relationship Class object.
CadAnnotationLayer (esriCarto) An Esri Cad annotation layer.
CadastralFabricSubLayer (esriCarto) Cadastral Fabric Feature Layer Object.
CadFeatureLayer (esriCarto) Esri CAD Feature Layer class.
CoverageAnnotationLayer (esriCarto) An Esri coverage annotation layer.
DimensionLayer (esriCarto) A collection of properties for a dimension layer.
FDOGraphicsLayer (esriCarto) A collection of properties for an annotation layer (feature data object graphics layer).
FeatureClass Esri Feature Class object.
FeatureLayer (esriCarto) A collection of features and their visual representation.
GdbRasterCatalogLayer (esriCarto) Geodabase RasterCatalog source and display options.
ImageServerLayer (esriCarto) Image server layer source and display options.
IMSSubFeatureLayer (esriCarto) A collection of IMS features as a sublayer of an IMSMapLayer.
NAClass (esriNetworkAnalyst) Holds features used as input and generated as output during network analysis.
ObjectClass Esri Object Class object.
RasterBand (esriDataSourcesRaster) A representation of a single band of a raster dataset on disk.
RasterCatalog A collection of raster datasets in a Geodatabase table.
RasterLayer (esriCarto) Raster layer source and display options.
RelQueryTable An object that joins two datasets based on common data values.
RouteEventSource (esriLocation) Route event source object.
SchematicDiagramClass (esriSchematic) Schematic diagram class object.
SchematicElementClass (esriSchematic) Schematic element class object.
SchematicInMemoryFeatureClass (esriSchematic) Schematic in memory feature class object.
StandaloneTable (esriCarto) A standalone table.
Table Esri Table object.
TemporalFeatureClass (esriTrackingAnalyst) Controls settings for the temporal feature class.
TemporalFeatureLayer (esriTrackingAnalyst) Defines the coclass IDL parameters and attributes of the TemporalFeatureLayer COM object.
TemporalRecordSet (esriTrackingAnalyst) Defines the COM coclass for the TemporalRecordSet COM object.
XYEventSource XY event source object.

Remarks

All tables support the IClass interface.

The CLSID property returns the globally unique identifier for the software component (COM coclass) representing the row objects stored and handed out by this table. Examples of the value of this property include the CLSIDs representing esriGeoDatabase.Row, esriGeoDatabase.Object, esriGeoDatabase.Feature, and esriGeoDatabase.AttributedRelationship.

The EXTCLSID property returns the globally unique identifier for the software component (COM coclass) representing the class extension associated with this Table. Class extensions are a mechanism whereby a developer can associate additional class level methods with an ObjectClass in the database.

The CLSID and EXTCLSID and other similar properties for a Table are stored in the geodatabase as part of the data dictionary information for the database. These properties link the behavior of the class (as implemented by software components in a DLL) with the data in the table.

The Extension property returns an interface on the ClassExtension associated with this Table.

The HasOID property may be used to test if this table has an Object ID column. Tables representing object classes and attributed relationship classes in a geodatabase will have an Object ID column whose values are unique and are assigned by the geodatabase as new objects and attributed relationships are created. The �Register With Geodatabase� command available on the context menu of a table in ArcCatalog can be used to register a pre-existing table in an RDBMS as an object class, this process will add an Object ID column to the table if needed.

The IClass interface also contains methods (inherited by ITable) to manage the collection of fields and indexes for a Table.

See Also

ITable Interface

.NET Samples

Utility wizard for basic schematic datasets configuration (Code Files: GenerateSchematicTemplate) | Timestamper class extension (Code Files: TimestampClassExtension) | Tabbed feature inspector (Code Files: ObjectInspector)

.NET Related Topics

Creating class extensions