ValueTask<SessionException> BlockUserIfRequiredAndGetExceptionAsync(
ISessionUserInfo userInfo,
IServerSecurityOptions options,
DateTime utcNow,
CultureInfo uiCulture,
TimeSpan utcOffset,
Func<ISessionUserInfo, SessionException?, CancellationToken, ValueTask>? afterRequestFuncAsync = null,
CancellationToken cancellationToken = default
)Function BlockUserIfRequiredAndGetExceptionAsync (
userInfo As ISessionUserInfo,
options As IServerSecurityOptions,
utcNow As DateTime,
uiCulture As CultureInfo,
utcOffset As TimeSpan,
Optional afterRequestFuncAsync As Func(Of ISessionUserInfo, SessionException, CancellationToken, ValueTask) = Nothing,
Optional cancellationToken As CancellationToken = Nothing
) As ValueTask(Of SessionException)ValueTask<SessionException^> BlockUserIfRequiredAndGetExceptionAsync(
ISessionUserInfo^ userInfo,
IServerSecurityOptions^ options,
DateTime utcNow,
CultureInfo^ uiCulture,
TimeSpan utcOffset,
Func<ISessionUserInfo^, SessionException^, CancellationToken, ValueTask>^ afterRequestFuncAsync = nullptr,
CancellationToken cancellationToken = CancellationToken()
)abstract BlockUserIfRequiredAndGetExceptionAsync :
userInfo : ISessionUserInfo *
options : IServerSecurityOptions *
utcNow : DateTime *
uiCulture : CultureInfo *
utcOffset : TimeSpan *
?afterRequestFuncAsync : Func<ISessionUserInfo, SessionException, CancellationToken, ValueTask> *
?cancellationToken : CancellationToken
(* Defaults:
let _afterRequestFuncAsync = defaultArg afterRequestFuncAsync null
let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> ValueTask<SessionException> Функция, выполняющаяся после проверок внутри блокировки на поле с безопасностью для сотрудника, или null, если дополнительных действий не требуется.
Обычно в этом метода выполняется удаление всех сессий этого сотрудника вызовом DeleteUserSessionsAsync(Guid, NullableGuid, CancellationToken), если исключение в параметре не равно null, т.е. пользователь был заблокирован.