2011-02-18 61 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而不是元組成員。