【问题标题】:DropdownSingleSelect user input type in Azure AD B2CAzure AD B2C 中的 DropdownSingleSelect 用户输入类型
【发布时间】:2019-04-07 05:37:43
【问题描述】:

我声明了“国家”,类型为“DropdownSingleSelect”,其中包含要显示的国家列表,并且为列表中的“美国”国家/地区启用了“SelectByDefault=true”。

此控件在用户旅程的第一步显示给用户,用户更改了下拉列表中的值。例如,用户选择了“UK”。

现在在用户旅程的第三步(自我断言),我必须显示与他选择的值相同的下拉列表并获得用户的确认。

如果我将该声明放入 outputclaim 中,则会向用户显示下拉列表,但选择默认值“US”。它应该已将所选值显示为“UK”。

如果我从值列表中删除“SelectByDefault=true”属性,它会按预期显示。

这是预期的行为还是可以在用户旅程本身中修复?

【问题讨论】:

  • 嗨@Raj。如果将<InputClaim ClaimTypeReferenceId="country" /> 添加到第三编排步骤的自断言技术配置文件中会发生什么?这应该预先填充下拉值。
  • @ChrisPadgett 我将它添加到了管弦乐队第三步的技术配置文件中。但它的下拉菜单选择了默认值('US')。它应该具有用户在步骤 1 中选择的“UK”。

标签: azure-active-directory azure-ad-b2c


【解决方案1】:

我可以通过在“注册”技术配置文件(或任何首次向用户显示声明的配置文件)中添加声明的默认值来解决此问题。这会导致在下拉列表中选择默认值。我有一个 countryCode 声明,其中包含所有国家/地区的可能值。我没有在 ClaimType 中设置 SelectByDefault=true。我添加了以下内容以注册技术资料

<InputClaims>
  <InputClaim ClaimTypeReferenceId="countryCode" DefaultValue="IN"/>
</InputClaims>

简介的短版是

<ClaimsProvider>
  <DisplayName>Local Account</DisplayName>
  <TechnicalProfiles>
    <TechnicalProfile Id="LocalAccountSignUpWithLogonEmail">
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="countryCode" DefaultValue="IN"/>
      </InputClaims>
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="countryCode"/>
      </OutputClaims>
    </TechnicalProfile>
  </TechnicalProfiles>
</ClaimsProvider>

在使用声明(并设置值)的其他地方,它会自动显示选定的值。

【讨论】:

    猜你喜欢
    • 2018-06-25
    • 2023-03-28
    • 1970-01-01
    • 2021-03-03
    • 1970-01-01
    • 1970-01-01
    • 2019-03-11
    • 2019-08-10
    • 1970-01-01
    相关资源
    最近更新 更多