public async Task <int?> TrySignIn(IOperation operation, ClientSignInEntity entity)
 {
     return(await operation.QuerySingleOrDefaultAsync <int?>(entity, @"
         SELECT TOP 1 au.[Id]
         FROM [authentication].[User] au
         INNER JOIN [authentication].[InternalUser] aiu ON au.[InternalUserId] = aiu.[Id]
         WHERE
             EXISTS (
                 SELECT TOP 1 1
                 FROM [client].[Client] cc
                 WHERE cc.[UserId] = au.[Id]
             ) AND
             aiu.[Email] = @Email AND
             aiu.[Password] = @Password AND
             au.[IsActivated] = 1;
     "));
 }
        public async Task <ClientAuthenticationProfileEntity?> TrySignIn(IOperation operation, ClientSignInEntity entity)
        {
            var id = await userAuthenticationStore.TrySignIn(operation, entity);

            return(await userAuthenticationStore.GetClientProfileById(operation,
                                                                      id ?? throw new Exception(ExceptionMessage.ClientSignInFailedDueToInactiveUserOrUnsuitableData)));
        }