探秘丰富多彩的ADOMD.NET对象
创始人
2024-06-17 15:00:23
0

ADOMD.NET对象对象和Measure对象有两个方法常用:Caption和UniqueName.通常来说需要获得一个维度下的所有度量值和维度,这两个属性就足够了.但有些时候把UniqueName作为动态构建MDX语句的部分会出现问题..#t#

比如,Dimension对象,我们都知道一个维度下面很可能分很多的层次,对于有层次的维度直接把其作为构建ADOMD.NET对象的一部分会提示错误,需要指明是这一层次下的具体哪一个,这些层次在ADOMD.NET对象中对应的就是Hierarchies属性,用来返回维度下的层次集合HierarchyCollection,而且其成员也是Hierarchy,对应其中的一个层次.

例如:对于时间维度,通常都会有如下的层次:年,季,月,日等.在这个时间维度中,Dimension对象"时间"其下有五个Hierarchy,它们就是年,季,月,日,当然还有时间其本身.根据Hierarchy的UniqueName属性,就可以得到其可作为动态构建MDX语句的引用。

在如下代码中,当读取到立方体中的一个维度之后,首先把维度类型为Measure的去掉,然后枚举每个维度下的所有层次,把其列出来,创建一个ADOMD.NET对象把其加入到类型为ListBox的容器中.

  1. foreach (Dimension mydim in mycubes[m].Dimensions)  
  2. {  
  3. if (mydim.DimensionType != DimensionTypeEnum.Measure)  
  4. {  
  5. foreach (Hierarchy myh in mydim.Hierarchies)  
  6. {  
  7. ListItem li = new ListItem();  
  8. li.Text = myh.Caption;  
  9. li.Value = myh.UniqueName;  
  10. lbDims.Items.Add(li);  
  11. }  
  12. }  

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...