Асинхронный метод, который вызывается из конструктора

У меня есть вопрос, касающийся асинхронного метода, который я вызываю в конструкторе, и как решить, или есть хороший обходной путь, вот пример

public Constructor()
{
 Value = PopulateValueFromDB(); //async method
 CalculateInDB(); // async method
}

public async Task PopulateValueFromDB()
{
 ... do some async calls
 return await ...
}

public async Task CalculateInDB()
{
 ...
 return await ...
}

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

Для CalculateInDB я могу сделать возврат недействительным, а затем решить проблему с ним, хотя я где-то читал, что возвращение пустоты не очень хорошее решение.

Что касается метода PopulateVlaue ... я должен что-то вернуть ...

Так есть ли работа вокруг меня, я не должензатем использовать эти методы и сделать их синхронизированными вместо асинхронных?

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

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