public override void Initialize() { m_RelationFields = Execute(RelationFieldCommandText) .Select(o => RelationField.CreateFrom(SqlHelper, o)) .ToDictionary(x => new RelationFieldKey(x.RelationName, x.FieldName)); m_RelationFieldByTypeObjectNameKey = m_RelationFields .Values .ToDictionary(rf => rf.TypeObjectNameKey); var relationFields = m_RelationFields.Values.ToLookup(x => x.RelationName); m_Relations = Execute(RelationCommandText) .Select(o => Relation.CreateFrom(SqlHelper, o, relationFields)) .ToDictionary(x => x.RelationName); m_ViewRelations = Execute(ViewRelationCommandText) .Select(o => ViewRelation.CreateFrom(SqlHelper, o)) .ToList(); m_Tables = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.Persistent) .ToDictionary(x => x.RelationName); m_Views = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.View) .ToDictionary(x => x.RelationName); m_ExternalTables = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.External) .ToDictionary(x => x.RelationName); m_GttTables = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.GlobalTemporaryPreserve || x.MetadataRelationType == MetadataRelationType.GlobalTemporaryDelete) .ToDictionary(x => x.RelationName); }
public override void Initialize() { m_RelationFields = Execute(RelationFieldCommandText) .Select(o => RelationField.CreateFrom(SqlHelper, o)) .ToDictionary(x => new RelationFieldKey(x.RelationName, x.FieldName)); m_RelationFieldByTypeObjectNameKey = m_RelationFields .Values .ToDictionary(rf => rf.TypeObjectNameKey); var relationFields = m_RelationFields.Values.ToLookup(x => x.RelationName); m_Relations = Execute(RelationCommandText) .Select(o => Relation.CreateFrom(SqlHelper, o, relationFields)) .ToDictionary(x => x.RelationName); m_ViewRelations = Execute(ViewRelationCommandText) .Select(o => ViewRelation.CreateFrom(SqlHelper, o)) .ToList(); m_Tables = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.PERSISTENT) .ToDictionary(x => x.RelationName); m_Views = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.VIEW) .ToDictionary(x => x.RelationName); m_ExternalTables = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.EXTERNAL) .ToDictionary(x => x.RelationName); m_GttTables = m_Relations.Values .Where(x => x.MetadataRelationType == MetadataRelationType.GLOBAL_TEMPORARY_PRESERVE || x.MetadataRelationType == MetadataRelationType.GLOBAL_TEMPORARY_DELETE) .ToDictionary(x => x.RelationName); }