以编程方式创建与事实维度的关系

Programatically create Relationship to Fact Dimension

我想基于相同的事实 table.

在度量组和 "Fact dimension" 之间创建 "Fact" 类型的关系

我使用下面的代码

var cubeDim = OlapCube.Dimensions.GetByName(dimensionName);
var regMgDim = new RegularMeasureGroupDimension(cubeDim.ID);
olapMeasureGroup.Dimensions.Add(regMgDim);

var cubeDimKeyAttr = cubeDim.Dimension.KeyAttribute;
var mgAttr = regMgDim.Attributes.Add(cubeDimKeyAttr.ID);
mgAttr.Type = MeasureGroupAttributeType.Granularity;

但它被创建为 "Regular" 类型的关系。

我希望它像这样结束(查看关系类型):

设法弄明白了。

代码应该是,

var cubeDim = OlapCube.Dimensions.GetByName(dimensionName);
var regMgDim = new DegenerateMeasureGroupDimension(cubeDim.ID);
olapMeasureGroup.Dimensions.Add(regMgDim);

DegenerateMeasureGroupDimension这个名字虽然不明显,但是创建事实维度关系的维度