nHydrate.Generator.Models.Relation.GetSecondaryAssociativeTable C# (CSharp) Method

GetSecondaryAssociativeTable() public method

public GetSecondaryAssociativeTable ( ) : Table
return Table
        public Table GetSecondaryAssociativeTable()
        {
            if (!this.IsManyToMany) return null;

            var parentTable = (Table)this.ParentTableRef.Object;
            var childTable = (Table)this.ChildTableRef.Object;

            var otherTable = parentTable;
            if (childTable.AssociativeTable) otherTable = childTable;

            if (otherTable.AssociativeTable)
            {
                var relationList = otherTable.GetRelationsWhereChild();
                {
                    var relation = relationList.Where(x => x != this).FirstOrDefault();
                    if (relation == null) return null;

                    return relation.ParentTableRef.Object as Table;

                }
            }
            return null;

        }