Returns a TableRelationship object which represents either a geodatabase relationship class or an in-memory table relationship.

Namespace:  ESRI.ArcGISExplorer.Data

Assembly:  ESRI.ArcGISExplorer (in ESRI.ArcGISExplorer.dll) Version: 2.0.0.1500 (2.0.0.1500)

Syntax

C#
public TableRelationship OpenTableRelationship(
	string name
)
Visual Basic (Declaration)
Public Function OpenTableRelationship ( _
	name As String _
) As TableRelationship

Parameters

name
Type: System..::.String

The name of the relationship.

Return Value

A TableRelationship object which represents an association between two tables based on a shared column and could be either a geodatabase relationship class or a in-memory TableRelationship.

Examples

The code below accesses two geodatabase relationship classes using the GetTableRelationship method then prints the TableRelationship properties for each.
CopyC#
//Example 1 - Open a geodatabase relationship class which has a one-to-many cardinality 
//and print out the TableRelationship properties.

//Open file geodatabase
Geodatabase scotlandGdb = new Geodatabase(@"C:\Data\Scotland.gdb");

//Open the mountains feature class
Table mountains = scotlandGdb.OpenTable("mountains");

//Open the MountainRatings geodatabase relationship class
TableRelationship mtnAndRatingsRel = scotlandGdb.OpenTableRelationship("MountainRatings");

//Print out properties describing the TableRelationship 
System.Diagnostics.Debug.Print(mtnAndRatingsRel.Name);                        //Prints "MountainRatings"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.Type.ToString());             //Prints "Geodatabase"          
System.Diagnostics.Debug.Print(mtnAndRatingsRel.Cardinality.ToString());      //Prints "OneToMany"   
System.Diagnostics.Debug.Print(mtnAndRatingsRel.IsAttributed.ToString());     //Prints "False"  
System.Diagnostics.Debug.Print(mtnAndRatingsRel.OriginTable.Name);            //Prints "mountains"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.OriginKeyColumnName);         //Prints "OBJECTID"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.DestinationTable.Name);       //Prints "mtn_ratings"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.OriginForeignKeyColumnName);  //Prints "MTN_ID"

//Example 2 - Open a geodatabase relationship class which has a many-to-many cardinality 
//and print out the TableRelationship properties.

//Open file geodatabase
Geodatabase propertiesGdb = new Geodatabase(@"C:\Data\Property.gdb");

//Open the Properties feature class
Table properties = propertiesGdb.OpenTable("Properties");

//Open the PropertyOwners geodatabase relationship class
TableRelationship propertyOwnersRel = propertiesGdb.OpenTableRelationship("PropertyOwners");

//Print out properties describing the TableRelationship 
System.Diagnostics.Debug.Print(propertyOwnersRel.Name);                           //Prints "PropertyOwners"
System.Diagnostics.Debug.Print(propertyOwnersRel.Type.ToString());                //Prints "Geodatabase"          
System.Diagnostics.Debug.Print(propertyOwnersRel.Cardinality.ToString());         //Prints "ManyToMany"   
System.Diagnostics.Debug.Print(propertyOwnersRel.IsAttributed.ToString());        //Prints "False"  
System.Diagnostics.Debug.Print(propertyOwnersRel.OriginTable.Name);               //Prints "Properties"
System.Diagnostics.Debug.Print(propertyOwnersRel.OriginKeyColumnName);            //Prints "PropertyID"
//Note that the OriginForeignKeyColumnName is in a geodatabase-managed "link" table
System.Diagnostics.Debug.Print(propertyOwnersRel.OriginForeignKeyColumnName);     //Prints "PropID"
System.Diagnostics.Debug.Print(propertyOwnersRel.DestinationTable.Name);          //Prints "Owners"
System.Diagnostics.Debug.Print(propertyOwnersRel.DestinationKeyColumnName);       //Prints "OwnerID"
//Note that the DestinationForeignKeyColumnName is a geodatabase-managed "link" table
System.Diagnostics.Debug.Print(propertyOwnersRel.DestinationForeignKeyColumnName);//Prints "OwnID"
CopyVB.NET
'Example 1 - Open a geodatabase relationship class which has a one-to-many cardinality 
'and print out the TableRelationship properties.


'Open file geodatabase
Dim scotlandGdb As Geodatabase = New Geodatabase("C:\Data\Scotland.gdb")

'Open the mountains feature class
Dim mountains As Table = scotlandGdb.OpenTable("mountains")

'Open the MountainRatings geodatabase relationship class
Dim mtnAndRatingsRel As TableRelationship = scotlandGdb.OpenTableRelationship("MountainRatings")

'Print out properties describing the TableRelationship 
System.Diagnostics.Debug.Print(mtnAndRatingsRel.Name)                        'Prints "MountainRatings"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.Type.ToString())             'Prints "Geodatabase"          
System.Diagnostics.Debug.Print(mtnAndRatingsRel.Cardinality.ToString())      'Prints "OneToMany"   
System.Diagnostics.Debug.Print(mtnAndRatingsRel.IsAttributed.ToString())     'Prints "False"  
      System.Diagnostics.Debug.Print(mtnAndRatingsRel.OriginTable.Name)            'Prints "mountains"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.OriginKeyColumnName)         'Prints "OBJECTID"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.DestinationTable.Name)       'Prints "mtn_ratings"
System.Diagnostics.Debug.Print(mtnAndRatingsRel.OriginForeignKeyColumnName)  'Prints "MTN_ID"


'Example 2 - Open a geodatabase relationship class which has a many-to-many cardinality 
'and print out the TableRelationship properties.


'Open file geodatabase
Dim propertiesGdb As Geodatabase = New Geodatabase("C:\Data\Property.gdb")

'Open the Properties feature class
Dim properties As Table = propertiesGdb.OpenTable("Properties")

'Open the PropertyOwners geodatabase relationship class
Dim propertyOwnersRel As TableRelationship = propertiesGdb.OpenTableRelationship("PropertyOwners")

'Print out properties describing the TableRelationship 
System.Diagnostics.Debug.Print(propertyOwnersRel.Name)                           'Prints "PropertyOwners"
System.Diagnostics.Debug.Print(propertyOwnersRel.Type.ToString())                'Prints "Geodatabase"          
System.Diagnostics.Debug.Print(propertyOwnersRel.Cardinality.ToString())         'Prints "ManyToMany"   
System.Diagnostics.Debug.Print(propertyOwnersRel.IsAttributed.ToString())        'Prints "False"  
System.Diagnostics.Debug.Print(propertyOwnersRel.OriginTable.Name)               'Prints "Properties"
System.Diagnostics.Debug.Print(propertyOwnersRel.OriginKeyColumnName)            'Prints "PropertyID"
'Note that the OriginForeignKeyColumnName is in a geodatabase-managed "link" table
System.Diagnostics.Debug.Print(propertyOwnersRel.OriginForeignKeyColumnName)     'Prints "PropID"
System.Diagnostics.Debug.Print(propertyOwnersRel.DestinationTable.Name)          'Prints "Owners"
System.Diagnostics.Debug.Print(propertyOwnersRel.DestinationKeyColumnName)       'Prints "OwnerID"
'Note that the DestinationForeignKeyColumnName is a geodatabase-managed "link" table
System.Diagnostics.Debug.Print(propertyOwnersRel.DestinationForeignKeyColumnName) 'Prints "OwnID"

See Also