コード例 #1
0
        public static IEnumerable <Extract> GetExtracts(DataModelSchema schema)
        {
            var tables = schema.FilterTables();

            var measures    = tables.Where(t => t.Measures != null).SelectMany(t => GetMeasures(t));
            var columns     = tables.Where(t => t.Columns != null).SelectMany(t => GetColumns(t));
            var partitions  = tables.Where(t => t.Partitions != null).SelectMany(t => GetPartitions(t));
            var expressions = schema.Model.Expressions != null?schema.Model.Expressions.Select(e => GetExtractFromExpression(e)) : Enumerable.Empty <Extract>();

            return(measures.Concat(columns).Concat(partitions).Concat(expressions));
        }