示例#1
0
        private ColumnHierarchy GetDaxColumnHierarchyDmv1100Id(string tableName, string columnDmv1100Id, string structureName, long tablePartitionNumber, long segmentNumber)
        {
            var daxColumn          = GetDaxColumnDmv1100Id(tableName, columnDmv1100Id);
            var daxColumnHierarchy =
                daxColumn.ColumnHierarchies.Where(
                    h =>
                    h.StructureName.Name == structureName &&
                    h.TablePartitionNumber == tablePartitionNumber &&
                    h.SegmentNumber == segmentNumber
                    ).FirstOrDefault();

            if (daxColumnHierarchy == null)
            {
                daxColumnHierarchy = new Dax.Metadata.ColumnHierarchy(daxColumn)
                {
                    StructureName        = new Dax.Metadata.DaxName(structureName),
                    TablePartitionNumber = tablePartitionNumber,
                    SegmentNumber        = segmentNumber
                };

                daxColumn.ColumnHierarchies.Add(daxColumnHierarchy);
            }

            return(daxColumnHierarchy);
        }
 internal ColumnHierarchy(Dax.Metadata.ColumnHierarchy columnHierarchy)
 {
     _ColumnHierarchy = columnHierarchy;
 }