0

我有一个 MDX 查询,我正在使用 Adomd.net 进行查询,其中 cmd 包含命令文本。

这在直接针对多维数据集运行时会返回以下输出,只是一个标题和计数整数,这是一个度量:

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 });

任何想法或指针都非常感谢 - 为这个厚重的问题道歉。

4

2 回答 2

0

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

在 ADOMD 你只是说myNumber = cs(x, y).FormattedValue

希望这可能会引导您朝着正确的方向前进!

于 2011-02-20T22:58:17.790 回答
0

您需要使用 CellSet 的 Cells 属性,Axes 只获取标签。就像是:

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

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

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

于 2012-03-13T20:31:50.610 回答