2010-07-13 84 views
0

使用視圖和/或存儲過程,我可以返回對SQL Analysis Services執行MDX查詢的結果(對鏈接使用OPENROWSET SSAS服務器轉換爲SQL)。從主鍵無查看(或存儲過程)創建ADO.NET實體

不幸的是,結果集不包括一個PK領域......或者就此而言,即使是一個可以作爲PK的列,如果我要破解這個模型。

誰能想到一個hacktacular把戲我可以使用的:

  1. 添加到我的結果的字段,插入一些自動遞增值(充當PK候選人)
  2. 莫名其妙定置這一領域成爲PK,這樣我就可以輕鬆地建立一個實體了嗎?

我99%確定答案是「否」。在這一點上,我已經可以通過使用帶有OData渲染的SSRS報告從SSAS獲取數據......但是當我使用帶有LINQ的遊戲時,我必須手動創建我的類型。

如果有人能爲我指定#1 &#2,這可能是一種更好的訪問數據的方式,因爲Modeler會爲我創建我的類型(實體)。

謝謝!

回答

0

我不確定我明白你爲什麼不能有一列可以充當主鍵。我剛剛對我的一個多維數據集運行了一個類似的查詢,並將其篩選到了一列成員列表中,並且每個列名都包含成員名稱。下面是一個例子:

提交:

SELECT Measures.members ON ROWS, 
Customer.[CustomerIdKeyField].[UniqueCustomerId] ON COLUMNS 
FROM [Postage Prints] 

返回:

(colum header) [Measures].[MeasuresLevel].[MEMBER_CAPTION] [Customer].[CustomerIdKeyField].&[UniqueCustomerId] 

(row) Measure1 9.6800000000000015 

(row) Measure2 22 

(row) Measure3 1