У меня есть метод с некоторым кодом, который выполняет операцию await
:
public async Task DoSomething()
{
var x = await ...;
}
Мне нужен этот код для работы в потоке диспетчера. Теперь Dispatcher.BeginInvoke()
ожидает, но я не могу отметить lambda как async
, чтобы запустить await
изнутри, например:
public async Task DoSomething()
{
App.Current.Dispatcher.BeginInvoke(async () =>
{
var x = await ...;
}
);
}
Во внутренней async
, я получаю ошибку:
Невозможно преобразовать лямбда-выражение для ввода "System.Delegate", потому что это не тип делегата.
Как я могу работать с async
из Dispatcher.BeginInvoke()
?