NumberHelperProcessExtensionsWhileClosingOrRefreshingCardAsync - метод
Выполняет расширения и обрабатывает очередь действий для события закрытия вкладки карточки
или обновления карточки
ProcessingQueueWhileClosingOrRefreshingCard.
Рекомендуется вызывать метод на клиенте, где доступны клиентские зависимости и текущий контекст
UIContext.Current.
Однако, это не является требованием платформы, т.е. при использовании реализации
INumberDirector из типового решения
возможно выполнение метода и на сервере.
Метод может потребоваться вызвать вручную, например, если запросом
NewAsync(CardNewRequest, CancellationToken)
была создана (но не сохранена) карточка, для которой в настройках указано "выделять номер при создании".
В этом случае номер будет зарезервирован, но не освобождён, и для выполнения всех действий, связанных с освобождением номеров,
требуется вызвать этот метод, но только если карточка не будет сохранена запросом
StoreAsync(CardStoreRequest, CancellationToken).
Пространство имён: Tessa.Cards.NumbersСборка: Tessa (в Tessa.dll) Версия: 3.6.0.22
public static Task ProcessExtensionsWhileClosingOrRefreshingCardAsync(
Card card,
CardType cardType,
Dictionary<string, Object> contextInfo,
INumberDirectorContainer numberDirectorContainer,
IValidationResultBuilder validationResult,
CancellationToken cancellationToken = default
)
Public Shared Function ProcessExtensionsWhileClosingOrRefreshingCardAsync (
card As Card,
cardType As CardType,
contextInfo As Dictionary(Of String, Object),
numberDirectorContainer As INumberDirectorContainer,
validationResult As IValidationResultBuilder,
Optional cancellationToken As CancellationToken = Nothing
) As Task
public:
static Task^ ProcessExtensionsWhileClosingOrRefreshingCardAsync(
Card^ card,
CardType^ cardType,
Dictionary<String^, Object^>^ contextInfo,
INumberDirectorContainer^ numberDirectorContainer,
IValidationResultBuilder^ validationResult,
CancellationToken cancellationToken = CancellationToken()
)
static member ProcessExtensionsWhileClosingOrRefreshingCardAsync :
card : Card *
cardType : CardType *
contextInfo : Dictionary<string, Object> *
numberDirectorContainer : INumberDirectorContainer *
validationResult : IValidationResultBuilder *
?cancellationToken : CancellationToken
(* Defaults:
let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> Task
- card Card
- Карточка, для которой выполняется действие. В ней должны быть доступны данные для всех секций.
- cardType CardType
- Тип карточки.
- contextInfo DictionaryString, Object
-
Информация для расширений, доступная для некоторого "внешнего" контекста, или null, если такой контекст отсутствует.
Для карточки, доступной в UI, это ICardModel.Info. Если метод вызывается из другого расширения на карточку,
то это context.Request.Info.
- numberDirectorContainer INumberDirectorContainer
- Объект, предоставляющий доступ к API номеров.
- validationResult IValidationResultBuilder
- Результат валидации, в который будут записаны сообщения, в т.ч. ошибки в процессе выполнения.
- cancellationToken CancellationToken (Optional)
- Объект, посредством которого можно отменить асинхронную задачу.
TaskАсинхронная задача.