Хорошее решение для ожидания в try / catch / finally?

Мне нужно позвонитьasync метод вcatch блок, прежде чем снова выдать исключение (с его трассировкой стека) следующим образом:

try
{
    // Do something
}
catch
{
    //  await action().ConfigureAwait(false)).Wait();
}

public static TResult AwaitTaskSync(Func action)
{
    return Task.Run(async () => await action().ConfigureAwait(false)).Result;
}

public static void AwaitSync(Func action)
{
    AwaitTaskSync(() => action().AsTask());
}

public static TResult AwaitSync(Func action)
{
    return AwaitTaskSync(() => action().AsTask());
}

Итак, мои вопросы: как вы думаете, этот код в порядке?

Конечно, если у вас есть какие-то улучшения или вы знаете лучший подход, яя слушаю! :)

Ответы на вопрос(4)

Ваш ответ на вопрос