2011-02-18 65 views
0

我有一个MDX查询,我正在使用Adomd.net,其中cmd包含命令文本。如何通过C#访问MDX输出的元组/属性?

此,当对一个立方体直接运行返回以下输出,只是一个标题和计数integar,这是一招:

TrueCount 
    n 

但是,我怎么访问此措施/元组/号通过C# ?

我知道如何获得标题TrueCount(见下文),但我不知道如何获取花粉数量。

//Execute the query, returning a cellset 
CellSet cs = cmd.ExecuteCellSet(); 

//Output the column captions from the first axis 
TupleCollection tuplesOnColumns = cs.Axes[0].Set.Tuples; 

foreach (var column in tuplesOnColumns) 
    if (!column.Members[0].Caption.Contains("All")) 
     truecount.Add(new TrueCount() { CountTitle = column.Members[0].Caption }); 

任何想法或指针非常感谢 - 厚道问题的道歉。

回答

0

我还没有使用这些函数来运行MDX,但我的经验与ADOMD是行和列的标题是从不同的对象访问到中间的数字。所以我认为你需要看看你的cs对象,而不是在cs.Axes之内。

在ADOMD你刚才说myNumber = cs(x, y).FormattedValue

希望这会导致你在正确的方向!

0

您需要使用CellSet的Cells属性,Axes只获取标签。例如:

Count = cs.Cells[column.TupleOrdinal,0].Value 

如果您希望显示带有多维数据集格式化规则的值,请使用.FormattedValue

我发现它更容易使用cs.Axes[0].Positions而不是元组成员。