【发布时间】:2012-03-31 03:06:51
【问题描述】:
我正在使用 VB.NET 连接并解析来自 Analysis Services 数据库的数据。
我遇到的问题是在尝试查找与给定维度相关的所有度量组时。我一直在研究 API,Dimensions 似乎根本没有任何关于 Measure Groups 的信息,但 Measure Groups 可以包含Dimensions。
如果我想获得给定度量组 (measureGroup.Dimensions) 的相关维度列表,这很容易,但我正在寻找的是相反的。
我唯一能想到的就是遍历多维数据集中的所有度量组并检查它是否包含对相关维度的引用:
Dim dimID As String = "SOME_DIM_ID"
Dim relatedMeasureGroups As New List(Of Amo.MeasureGroup)
For Each mg As Amo.MeasureGroup In _cube.MeasureGroups
If mg.Dimensions.Contains(dimID) Then
relatedMeasureGroups.Add(mg)
Continue For
End If
Next
这可行,但显然非常缓慢且效率低下。有没有更直接的方法,我只是没有看到?
编辑:我应该说,我需要这样做,因为我试图找到所有潜在的many-to-many Measure Groups for a Dimension。如您所知,我这样做的方式有点手动(查找与初始维度相关的度量组,查找与它们相关的所有维度,然后再次查找与那些相关的所有度量组),所以如果有更直接的方法来解决这个问题,它可以绕过我解决原始问题的需要。
【问题讨论】:
标签: vb.net ssas data-warehouse