AssemblyLoaderHelperSetCurrentAssemblyResolveHandler(IReadOnlyCollectionString, FuncAssemblyName, Boolean, ILogger, FuncAssemblyLoadContext, AssemblyName, Assembly) - метод

Добавляет обработчик загрузки сборок AssemblyLoadContext.Default.Resolving для указанного списка сборок probingPathList, который обычно загружается вызовом метода GetActualProbingPathList(IEnumerableString, Assembly, Boolean). Метод удаляет регистрацию предыдущего обработчика, если таковой был зарегистрирован. Вызов метода потокобезопасен.

Definition

Пространство имён: Tessa.Platform
Сборка: Tessa (в Tessa.dll) Версия: 4.0.4
C#
public static void SetCurrentAssemblyResolveHandler(
	IReadOnlyCollection<string> probingPathList,
	Func<AssemblyName, bool>? canAssemblyResolveFailFunc,
	ILogger? logger,
	ref Func<AssemblyLoadContext, AssemblyName?, Assembly>? currentAssemblyResolveHandler
)

Параметры

probingPathList  IReadOnlyCollectionString
Список папок, используемых для загрузки сборок помимо папки с приложением. Не должен быть равен null. Обычно загружается вызовом метода GetActualProbingPathList(IEnumerableString, Assembly, Boolean).
canAssemblyResolveFailFunc  FuncAssemblyName, Boolean
Функция, которая возвращает признак того, что не следует писать в лог при ошибке загрузки сборки, или null, если используется стандартная функцию CanAssemblyResolveFail(AssemblyName).
logger  ILogger
Объект, выполняющий логирование ситуации, когда невозможно найти сборку для загрузки, или null, если используется объект по умолчанию.
currentAssemblyResolveHandler  FuncAssemblyLoadContext, AssemblyName, Assembly

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

Для стандартного загрузчика используйте перегрузку без ref: SetCurrentAssemblyResolveHandler(IReadOnlyCollectionString, FuncAssemblyName, Boolean, ILogger).

См. также