#c#
#c#
Вопрос:
Я использую метод асинхронной задачи. Есть ли какой-либо способ вернуть false из этого метода. Если нет, то как я могу справиться с этим сценарием?
public static async Task Share(MemoryStream streamToEmail)
{
if(streamToEmail.Length < 10000000)
{
await SendEmails();
}
else
{
//return false;
}
}
Комментарии:
1. Измените свой метод, чтобы возвращать
Task<bool>
2. Вы можете изменить возвращаемый тип на
Task<bool>
и возвращатьtrue
/false
внутри каждой ветви, но вместо этого вам, вероятно, следует создать исключение.3. Взгляните на класс Task<TResult> : docs.microsoft.com/en-us/dotnet/api /…
Ответ №1:
Нет, если только вы не планируете также возвращать некоторое логическое значение в if-ветке. Если вы это сделаете, вы могли бы сделать это следующим образом:
public static async Task<bool> Share(MemoryStream streamToEmail)
{
if(streamToEmail.Length < 10000000)
{
await SendEmails();
return true;
}
else
{
return false;
}
}