我有如下代码:
Microsoft.AnalysisServices.AdomdClient.Dimension dimension = cubeDef.Dimensions[dimensionName];
string hierarchyName = matches[1].Value.Replace("[", "").Replace("]", "");
Microsoft.AnalysisServices.AdomdClient.Hierarchy hierarchy = dimension.Hierarchies[hierarchyName];
Microsoft.AnalysisServices.AdomdClient.Level adomdLevel = hierarchy.Levels[levelNumber];
MemberCollection levelMembers = adomdLevel.GetMembers();
让所有成员达到一个水平是件好事。
但是,我想要的是将成员范围缩小到具有特定父级的成员。
这样成员就是从选定的父级向下钻取的子级。
GetMembers 有重载,但我无法弄清楚如何使用它们仅过滤父维度子级。
有没有办法做到这一点?
我拥有的代码获得了完整级别,然后在代码中过滤:
foreach (Microsoft.AnalysisServices.AdomdClient.Member memberData in levelMembers)
{
if (memberData.Parent.UniqueName != parentMemberUniqueName)
{ continue; }
// code using child of parent here
}
随着我深入研究,这证明速度较慢。
谢谢,
杰森兰