Возврат значения из колбека c#

134
30 января 2020, 15:30

Есть у меня некоторый метод:

public async Task<ProcessingCallback> ExecuteAction(Task<ApiProcess> process, ActionPreset actionPreset)
    {
        ProcessingCallback processingCallback = null; 
        process.Result.Execution += functionCallbak =>
        { 
            switch(functionCallbak.Result.FunctionMarker)
            {
                case EFunctions.create: { processingCallback = CreateVoucher(functionCallbak).Result.CallbackInit(actionPreset); }; break;
                case EFunctions.amout:  { processingCallback = AmountVoucher(functionCallbak).CallbackInit(actionPreset); }; break;
                case EFunctions.redeem: { processingCallback = RedeemVoucher(functionCallbak); }; break;
            }
        };
        await process.Result.AddActionAsync(actionPreset);
        return processingCallback;
    }

Его суть в следующем: Подписавшись на событие Execution внутри процесса мне оттуда приходит funtioncallback, который я обрабатываю в свитче и генерю другой тип колбека(ProcessingCallback processingCallback). Его же я и хочу вернуть в качестве возвратного типа, но приходит нулл. Судя по всему на обработку уходит больше временя и return сробатывает раньше чем кешируется processingCallback. Каким образом мне реализовать мою задумку?

READ ALSO
Как выполнить выборку работы с БД

Как выполнить выборку работы с БД

Подскажите плизГде прочитать или кто то уже сталкивался

142
WPF. Работа MessageBox или проблема с потоками

WPF. Работа MessageBox или проблема с потоками

Имеется приложение WPF, в котором мне нужно открыть портВ случае, если порт открыть не удается - вывести сообщение об ошибке и после закрытия...

162
отличие array_splice от array_slice

отличие array_splice от array_slice

Вот срабатывает как надо:

154
Работа с сессиями php

Работа с сессиями php

Есть список товаров в корхинеУ каждого товара есть счётчик количества

134