protected virtual void Visit(AssociationType associationType) { foreach (var endMember in GetSequence(associationType.AssociationEndMembers, it => it.Identity)) { Visit(endMember); } Visit(associationType.BaseType); foreach (var keyMember in GetSequence(associationType.KeyMembers, it => it.Identity)) { Visit(keyMember); } foreach (var member in GetSequence(associationType.GetDeclaredOnlyMembers <EdmMember>(), it => it.Identity)) { Visit(member); } foreach (var item in GetSequence(associationType.ReferentialConstraints, it => it.Identity)) { Visit(item); } foreach (var item in GetSequence(associationType.RelationshipEndMembers, it => it.Identity)) { Visit(item); } }
protected virtual void Visit(AssociationType associationType) { foreach (AssociationEndMember associationEndMember in this.GetSequence <AssociationEndMember>((IEnumerable <AssociationEndMember>)associationType.AssociationEndMembers, (Func <AssociationEndMember, string>)(it => it.Identity))) { this.Visit(associationEndMember); } this.Visit(associationType.BaseType); foreach (EdmMember edmMember in this.GetSequence <EdmMember>((IEnumerable <EdmMember>)associationType.KeyMembers, (Func <EdmMember, string>)(it => it.Identity))) { this.Visit(edmMember); } foreach (EdmMember edmMember in this.GetSequence <EdmMember>((IEnumerable <EdmMember>)associationType.GetDeclaredOnlyMembers <EdmMember>(), (Func <EdmMember, string>)(it => it.Identity))) { this.Visit(edmMember); } foreach (ReferentialConstraint referentialConstraint in this.GetSequence <ReferentialConstraint>((IEnumerable <ReferentialConstraint>)associationType.ReferentialConstraints, (Func <ReferentialConstraint, string>)(it => it.Identity))) { this.Visit(referentialConstraint); } foreach (RelationshipEndMember relationshipEndMember in this.GetSequence <RelationshipEndMember>((IEnumerable <RelationshipEndMember>)associationType.RelationshipEndMembers, (Func <RelationshipEndMember, string>)(it => it.Identity))) { this.Visit(relationshipEndMember); } }