protected void VisitEntityIdentity(EntityIdentity entityIdentity, TArgType arg) { DiscriminatedEntityIdentity dei = entityIdentity as DiscriminatedEntityIdentity; if (null != dei) { VisitEntityIdentity(dei, arg); } else { VisitEntityIdentity((SimpleEntityIdentity)entityIdentity, arg); } }
/// <summary> /// constructor /// </summary> /// <param name="type">column datatype</param> /// <param name="name">column name</param> /// <param name="entityIdentity">entity identity information</param> /// <param name="properties">list of properties</param> internal EntityColumnMap(md.TypeUsage type, string name, ColumnMap[] properties, EntityIdentity entityIdentity) : base(type, name, properties) { Debug.Assert(entityIdentity != null, "Must specify an entity identity"); m_entityIdentity = entityIdentity; }
/// <summary> /// RefColumnMap /// </summary> /// <param name="columnMap"></param> /// <param name="replacementVarMap"></param> /// <returns></returns> internal override ColumnMap Visit(RefColumnMap columnMap, VarMap replacementVarMap) { EntityIdentity newEntityIdentity = VisitEntityIdentity(columnMap.EntityIdentity, replacementVarMap); return(new RefColumnMap(columnMap.Type, columnMap.Name, newEntityIdentity)); }