Click or drag to resize
RelationshipInfo Class
Helper class which is used to return relationship info to code generators through GeneratorUtils.
Inheritance Hierarchy
SystemObject
  SD.LLBLGen.Pro.GeneratorCoreRelationshipInfo

Namespace:  SD.LLBLGen.Pro.GeneratorCore
Assembly:  SD.LLBLGen.Pro.GeneratorCore (in SD.LLBLGen.Pro.GeneratorCore.dll) Version: 5.3.0.0 (5.3.0)
Syntax
public class RelationshipInfo

The RelationshipInfo type exposes the following members.

Constructors
  NameDescription
Public methodRelationshipInfo
Initializes a new instance of the RelationshipInfo class.
Top
Properties
  NameDescription
Public propertyCamelCasedNavigator
Gets the navigator string but now camel cased.
Public propertyCamelCasedOppositeNavigator
Gets the opposite navigator string but now camel cased.
Public propertyForEntity
Gets the entity this relationship info is for (the owner of this relationship info)
Public propertyIsOnPkSide
Gets a value indicating whether the entity this relationship info is for is on the pk side of Relationship
Public propertyNavigator
Gets the navigator.
Public propertyNavigatorInstance
Gets the navigator instance for the navigator of the entity this info is for
Public propertyNavigatorIsHidden
Gets a value indicating whether the navigator is hidden (empty) (true) or not (false)
Public propertyNavigatorIsSingleEntity
Gets a value indicating whether the navigator represents a set (true) or a single entity
Public propertyNormalRelationship
Gets this.Relationship as NormalRelationshipEdge. If Relationship is not a NormalRelationshipEdge, null is returned.
Public propertyOppositeNavigator
Gets the opposite navigator.
Public propertyOppositeNavigatorIsHidden
Gets a value indicating whether the opposite navigator is hidden (empty) (true) or not (false)
Public propertyOppositeNavigatorIsSingleEntity
Gets or sets a value indicating whether the opposite navigator represents a set (true) or a single entity
Public propertyOppositeRelationshipType
Gets the type of the relationship from the related entity 's point of view. So 1:n becomes m:1
Public propertyRelatedEntity
Gets the related entity.
Public propertyRelationship
Gets the relationship.
Public propertyRelationshipType
Gets the type of the relationship as seen from the owner entity's point of view. So if the type of this.Relationship is 1:n and ForEntity is accessed via the end navigator (so this.ViaStartNavigator is false), this property returns m:1, while this.Relationship.RelationshipType will return 1:n. This because 1 relationship object is used for both the sides of the relationship: customer 1:n order is equal to order m;1 customer.
Public propertyUniqueAssociationName
Gets the name of the unique association.
Public propertyViaStartNavigator
Gets a value indicating whether the owning entity is reached through the start navigator or the end navigator of Relationship
Top
Methods
  NameDescription
Public methodCreateOppositeVariant
Creates the opposite variant of this relationshipinfo
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetFkFieldsAsStringFromFkSide
Gets the fk field names as string from fk side, eventualy delimited with a delimiter (comma)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetOppositeRelationshipFields
Gets the relationship fields for the side this relationshipinfo is for. This means that if that entity is at the pk side, the pk fields are returned of the relationship (if applicable) otherwise the fk fields. If the relationship is an m:n relationship, an empty list is returned
Public methodGetPkFieldsAsStringFromPkSide
Gets the pk fields as string from pk side, eventualy delimited with a delimiter (comma)
Public methodGetRelationshipFieldPairs
Gets the relationship field pairs from the point of view of the side this relationshipinfo is for. This means that Value1 of a pair instance returned is the field in the entity this relationship info is for, and Value2 is a field in the related entity, for the relationship this relationship info is for. If the relationship is an m:n relationship, an empty list is returned
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Remarks
The purpose of this class is to provide information as seen from the point of view of the entity the relationship info is for. So if the relationship info is for customer and the relationship customer 1:n order, the related entity is 'Order', and for the same relationship for the entity Order a different relationshipinfo object has to be created. A method in this class performs that operation if a template needs this.
See Also