Добрый день!
Нужно из класса операции (задачи) вернуть результат.
Класс результата надо написать свой.
Чтобы не "изобретать велосипед", просмотрел несколько библиотек и фреймворков — как это лучше сделать.
Там где посмотрел — этот класс результата (или класс самой операции) имеют только свойства типа "IsCompletedSuccessfully" или "IsFaulted".
То есть они дают знать клиентскому коду только о том, что операция завершена либо успешно либо возникла ошибка.
Например, здесь:
https://docs.microsoft.com/ru-ru/dotnet/api/system.threading.tasks.task-1?view=netcore-2.0
Но в моей задаче, кроме "завершено успешно" или "произошла ошибка" есть еще третий вариант — "есть предупреждения".
"Есть предупреждения" — это когда при выполнении задачи были некритические ошибки, которые были корректно отработаны.
В этом случае клиентскому коду нельзя отправить ответ, что результат полностью "успешный", но и ответить "ошибка" — тоже не правильно.
Есть какие-нибудь фреймфорки, в которых для результата предусмотрено три варианта: "успешно", "ошибка", "предупреждения"?
Хочется посмотреть как это там реализовано, хотя бы на уровне интерфейса класса и его методов.