Association 元素 (CSDL)

CSDL(概念性架构定义语言)的 BI 扩展插件中的 Association 元素通过添加可用于控制关系中所涉及元素的可见性的属性,以扩展现有的 CSDL Association 元素。

Association 元素在极大程度上等同于由 CSDL 规范定义的 Association 元素,它具有以下子元素:

  • Documentation 元素

  • End 元素

  • Annotation 元素

适用的属性

下表列出了在 Association 元素上可找到的属性。

属性名称

是否必需

Name

关联的名称。

State

(扩展)指示是否在数据模型中使用关联的字符串枚举。

Hidden

(扩展)一个 true/false 值,指示关联在数据模型中是否可见。

注释

每个 AssociationSet 中都有一个关联。 AssociationSet 描述 Association 端点,同时包括为该关联定义的任何角色。 默认情况下,AssociationSet 的名称与 Association 的名称相同。

每当两个表或视图之间具有关系时,都会创建关联。 因为 Analysis Services 表格模型支持在两个表之间创建多个关联,所以,必须将其中一个关联标记为首选或活动的关联。 例如,Sales 表可能与用作 Date 维度的表之间有多个关系,Date 维度中的日期链接到订单日期、装运日期和发票日期。 多个途径可能导致计算结果模糊不清和错误的结果,除非显式指定要使用的关系。 有关如何在表格模型中使用关系的详细信息,请参阅关系(SSAS 表格)

示例

以下示例显示 Association 的定义,它使用表 InternetSales 与表 Date 各自的 DateKey 列将这两个表关联起来。

注意事项注意

如果作为端点的列具有相同名称,则有时会生成一个 GUID 以使名称变得具有唯一性。 此行为在将来的版本中可能发生变化。

请注意,AssociationSet 被标记为非活动状态。 这向您表明,在这两个表之间存在使用不同列的另一个关系,并且目前首选另一个关系来创建计算。

<AssociationSet Name="InternetSales_Date_Date_DateKey" Association="Sandbox.InternetSales_Date_Date_DateKey">
              <End EntitySet="InternetSales" />
              <End EntitySet="Date" />
      <bi:AssociationSet State="Inactive" />