Подтвердить что ты не робот

Существует ли эквивалент Application_Start для библиотеки классов в С#

Я хотел бы выполнить определенный код в библиотеке классов, когда он создается из другой сборки. Есть ли точка входа или бутстрап для библиотеки классов? Я думал, что статический метод Main будет делать трюк, но я ошибся. Приложениями для этого могут быть конфигурирование и создание экземпляра однопользовательского журнала, обработчика необработанных исключений и т.д.

4b9b3361

Ответ 1

AppDomain.AssemblyLoad Event, которое происходит при загрузке сборки. Вероятно, это можно использовать для вызова метода инициализации в вашей библиотеке классов.

public static void Main() 
{
    AppDomain currentDomain = AppDomain.CurrentDomain;
    currentDomain.AssemblyLoad += new AssemblyLoadEventHandler(MyAssemblyLoadEventHandler);
}

static void MyAssemblyLoadEventHandler(object sender, AssemblyLoadEventArgs args) 
{
      Console.WriteLine("ASSEMBLY LOADED: " + args.LoadedAssembly.FullName);
      //If this is the assembly that you want to call an initialize method..
}

Ниже приведены два похожих потока

как написать загрузку сборки сборки /lib класса lib

.Net: запуск кода при загрузке сборки