RuntimeExtensionsExecuteWithExceptionCheckAsyncTExtensionContext(IExtensionExecutor, String, TExtensionContext, ILogger, FuncIExtensionStrategyContext, ValueTask, Boolean) - метод

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

Definition

Пространство имён: Tessa.Platform.Runtime
Сборка: Tessa (в Tessa.dll) Версия: 4.0.4
C#
public static Task<bool> ExecuteWithExceptionCheckAsync<TExtensionContext>(
	this IExtensionExecutor executor,
	string methodName,
	TExtensionContext extensionContext,
	ILogger logger,
	Func<IExtensionStrategyContext, ValueTask>? handleExceptionAsync = null,
	bool continueOnCapturedContext = false
)
where TExtensionContext : class, IExtensionContext

Параметры

executor  IExtensionExecutor
Объект, исполняющий цепочку расширений.
methodName  String
Имя метода, который выполняется для каждого расширения в цепочке.
extensionContext  TExtensionContext
Контекст расширений.
logger  ILogger
Объект, выполняющий логирование сообщения об исключении.
handleExceptionAsync  FuncIExtensionStrategyContext, ValueTask  (Optional)
Метод, выполняющийся при обработке исключений для каждого экземпляра расширений после того, как была выполнена трассировка расширения. Метод может изменить IExtensionStrategyContext, в т.ч. установить режим обработки исключений в свойстве ExceptionHandlingMode. Укажите null, если метод не требуется выполнять.
continueOnCapturedContext  Boolean  (Optional)
Признак того, что выполнение продолжается после ожидания на исходном SynchronizationContext.

Параметры типа

TExtensionContext
Тип контекста расширений.

Возвращаемое значение

TaskBoolean
true, если цепочка расширений выполнена без исключений; false, если при выполнении цепочки расширений обнаружено исключение, которое было обработано.

Примечание об использовании

В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа IExtensionExecutor. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе Методы расширения (Visual Basic) или Методы расширения (Руководство по программированию в C#).

См. также