# FdoAssociationPropertyDefinition Class Reference

`#include <AssociationPropertyDefinition.h>`

Inheritance diagram for FdoAssociationPropertyDefinition:

[legend]

List of all members.

## Detailed Description

The FdoAssociationPropertyDefinition class derives from FdoPropertyDefinition and represents the association between two classes. The class of the associated class must already be defined in the feature schema and cannot be abstract.

Definition at line 37 of file AssociationPropertyDefinition.h.

## Public Member Functions
FDO_API FdoClassDefinition * | GetAssociatedClass ()
| Gets a reference to the associated class.
FDO_API FdoDeleteRule | GetDeleteRule ()
| Gets the delete rule.
FDO_API FdoDataPropertyDefinitionCollection * | GetIdentityProperties ()
| Gets a reference to an FdoDataPropertyDefinitionCollection which is a collection of properties of the current class that are used as key for this association. Initially, this collection is empty. The user can optionally add any number of properties. If the collection is left empty, the identity properties of the associated class are added to the current class. The number, order and types should match the property of the ReverseIdentityProperties collection. All properties in the collection should already exist in the containing class. This is needed in case the current class already has properties (foreign keys) that are used to reference the associated feature.
FDO_API bool | GetIsReadOnly ()
| This method is used to verify if this association property is a read-only association property. A read-only association property is created internally when the reverse name of an association property is specified. The read-only association property is added automatically to the associated class and can be used to navigate from the associated class to the associating class.
FDO_API bool | GetLockCascade ()
| Gets the lock cascade option. true to cascade the lock otherwise the lock is not cascaded.
FDO_API FdoString * | GetMultiplicity ()
| This method is used to return the association multiplicity from the owner class side. See SetMultiplicity method for description of the possible values.
virtual FDO_API FdoPropertyType | GetPropertyType ()
| Gets the concrete property type.
FDO_API FdoDataPropertyDefinitionCollection * | GetReverseIdentityProperties ()
| Gets a reference to an FdoDataPropertyDefinitionCollection used to return a collection of properties of the associated class that are used as key for this association. The number, order and types should match the IdentityProperties. If the reverse identity collection is empty, then the associated class identity properties will be used. The properties of the collection should already exist on the associated class.
FDO_API FdoString * | GetReverseMultiplicity ()
| This method is used to return the association multiplicity from the associated class side. See SetReverseMultiplicity method for description of the possible values.
FDO_API FdoString * | GetReverseName ()
| Gets the reverse name of this property. See description of SetReverseName.
FDO_API void | SetAssociatedClass (FdoClassDefinition *value)
| Sets a reference to the associated class.
FDO_API void | SetDeleteRule (FdoDeleteRule value)
| Sets the delete rule.
FDO_API void | SetIsReadOnly (bool value)
| This method is used to set the read-only status of the association property. This method should only be called by FDO providers to set to read-only the association property added internally to the associated class that represent the reverse association property.
FDO_API void | SetLockCascade (bool value)
| Sets the lock cascade option.
FDO_API void | SetMultiplicity (FdoString *value)
| This method is used to set the association multiplicity from the property owner class side. The only possible values are 1 or m. If the multiplicity is set to 1, then only one instance of the owning class can be associated to a given instance of the associated class. If the multiplicity is set to m, then many instances of the owning class can be associated to the same instance of the associated class.
FDO_API void | SetReverseMultiplicity (FdoString *value)
| This method is used to set the association multiplicity from the associated class side. The only possible values are 0 or 1. If the multiplicity is set to 0, then it is not mandatory to initialize the association property when a new object is created. If the multiplicity is set to 1, then the association property must be initialized when a new object is created.
FDO_API void | SetReverseName (FdoString *name)
| This method is used to set the name of this association as seen by the associated class. This is an optional parameter that can be provided if the navigation back from the associated class is needed. This property will appear as read-only property on the associated class. For example let's assume that we have an Accident class that associated to a Road class by an association called Road? If we wanted to find all the accidents associated to a given road, we will need to provide a reverse property name of the road association property. In this case an appropriate value for such a name would be accident. The filter that can be used to find all the accidents would look like: accident not null.
## Static Public Member Functions
static FDO_API FdoAssociationPropertyDefinition * | Create (FdoString *name, FdoString *description, bool system=false)
| Constructs an instance of an FdoAssociationPropertyDefinition using the specified arguments.
static FDO_API FdoAssociationPropertyDefinition * | Create ()
| Constructs a default instance of an FdoAssociationPropertyDefinition.
## Protected Member Functions
FDO_API | FdoAssociationPropertyDefinition (FdoString *name, FdoString *description, bool system=false)
FDO_API | FdoAssociationPropertyDefinition ()
| Constructs a default instance of an FdoAssociationPropertyDefinition.

The documentation for this class was generated from the following file:

- AssociationPropertyDefinition.h