public override IEnumerable <string> GetExtensionKeyColumnNames(MappingTable table)
        {
            ExtensionTableAttribute attribute = ((AttributeMappingTable)table).Attribute as ExtensionTableAttribute;

            if (attribute == null)
            {
                return(new string[0]);
            }
            return(attribute.KeyColumns.Split(separators));
        }
        public override IEnumerable <MemberInfo> GetExtensionRelatedMembers(MappingTable table)
        {
            AttributeMappingTable   amt       = (AttributeMappingTable)table;
            ExtensionTableAttribute attribute = amt.Attribute as ExtensionTableAttribute;

            if (attribute == null)
            {
                return(new MemberInfo[0]);
            }
            return(from n in attribute.RelatedKeyColumns.Split(separators) select this.GetMemberForColumn(amt.Entity, n));
        }
        public override string GetExtensionRelatedAlias(MappingTable table)
        {
            ExtensionTableAttribute attribute = ((AttributeMappingTable)table).Attribute as ExtensionTableAttribute;

            return((attribute != null) ? attribute.RelatedAlias : null);
        }