/// <summary> /// Override to populate the extended properties from the implemented association. /// </summary> protected override void LoadExtendedProperties() { var customAttributes = AssociationSource.Attributes().Where(a => !NHibernateUtilities.AssociationDefaultAttributes.Contains(a.Name.ToString())); foreach (var customAttribute in customAttributes) { ExtendedProperties.Add(customAttribute.Name.ToString(), customAttribute.Value); } }
/// <summary> /// Override to populate the properties from the implemented association. /// </summary> protected override void LoadProperties() { switch (AssociationType) { case AssociationType.ManyToMany: case AssociationType.OneToMany: case AssociationType.ZeroOrOneToMany: var key = AssociationSource.Descendant("key", _xmlNamespace); foreach (var column in key.Descendants("column", _xmlNamespace)) { var associationProperty = new NHibernateAssociationProperty(column, Entity); AddAssociationProperty(null, associationProperty); } break; case AssociationType.ManyToOne: foreach (var column in AssociationSource.Descendants("column", _xmlNamespace)) { var associationProperty = new NHibernateAssociationProperty(column, Entity); AddAssociationProperty(associationProperty, null); } break; } }
/// <summary> /// Do any Post constructor initialization here. /// By default, this does nothing. /// </summary> public override void Initialize() { AssociationKeyName = Name = AssociationSource.Attribute("name").Value; }