Установите DefaultValue в DateTime.Now() Эквивалент

Как установить значение по умолчанию для текущей даты и времени?

<OutputClaims>
    <OutputClaim ClaimTypeReferenceId="extension_MyCustomClaim" DefaultValue="DateTime.Now()">
</OutputClaims>

ClaimType для справки:

<ClaimType Id="extension_MyCustomClaim">
    <DisplayName>Some Date/Time</DisplayName>
    <DataType>date</DataType>
    <DefaultPartnerClaimTypes>
      <Protocol Name="OAuth2" PartnerClaimType="myCustomClaim" />
      <Protocol Name="OpenIdConnect" PartnerClaimType="myCustomClaim" />
    </DefaultPartnerClaimTypes>
    <AdminHelpText>Some date time</AdminHelpText>
    <UserInputType>TextBox</UserInputType>
</ClaimType>

Обновить

Невозможно загрузить политику. Причина: проверка не выполнена: 1 ошибка (и) проверки обнаружена в политике "B2C_1A_TRUSTFRAMEWORK_BUILDINGBLOCKS" арендатора "my-tenant.onmicrosoft.com". OutputClaims не соответствует в ClaimsTransformation с идентификатором "GetSystemDateTime" с TransformationMethoDTureTurTurTurTimeTurTurTurTurTurTurTurTurTurTurTurTurTurTurTurTurTurTurTimeTimeTimeTurur.

Следующие OutputClaims были объявлены в Политике, но TransformMethod не ожидали: [Date]currentDateTime. Следующие OutputClaim ожидались TransformMethod, но не были объявлены в политике: [DateTime]currentDateTime.

Интересно, если мне нужно обновление base.xml файл? Мысли?

1 ответ

Решение

Вы можете объявить преобразование утверждений типа GetCurrentDateTime, а затем вызвать его как выходное преобразование утверждений из технического профиля:

  <ClaimsTransformation Id="GetNow" TransformationMethod="GetCurrentDateTime">
    <OutputClaims>
      <OutputClaim ClaimTypeReferenceId="extension_MyCustomClaim" TransformationClaimType="currentDateTime" />
    </OutputClaims>
  </ClaimsTransformation>

Так же DataType из ClaimType должен быть dateTime

<ClaimType Id="extension_MyCustomClaim">
    ...
    <DataType>dateTime</DataType>
    ...
</ClaimType>
Другие вопросы по тегам