Ładowanie zależności na platformie .NET
Każda aplikacja .NET ma zależności. Nawet prosta hello world
aplikacja ma zależności od części bibliotek klas platformy .NET.
Zrozumienie domyślnej logiki ładowania zestawów na platformie .NET może pomóc w rozwiązywaniu typowych problemów z wdrażaniem.
W niektórych aplikacjach zależności są dynamicznie określane w czasie wykonywania. W takich sytuacjach kluczowe jest zrozumienie sposobu ładowania zarządzanych zestawów i niezarządzanych zależności.
AssemblyLoadContext
Interfejs AssemblyLoadContext API jest kluczowy dla projektu ładowania platformy .NET. Artykuł Understanding AssemblyLoadContext zawiera koncepcyjne omówienie projektu.
Ładowanie szczegółów
Szczegóły algorytmu ładowania zostały krótko omówione w kilku artykułach:
- Algorytm ładowania zarządzanego zestawu
- Algorytm ładowania zestawu satelitarnego
- Algorytm ładowania niezarządzanej biblioteki (natywnej)
- Domyślne sondowanie
Tworzenie aplikacji z wtyczkami
W samouczku Tworzenie aplikacji .NET z wtyczkami opisano sposób tworzenia niestandardowego elementu AssemblyLoadContext. Używa elementu , AssemblyDependencyResolver aby rozwiązać zależności wtyczki. Samouczek poprawnie izoluje zależności wtyczki od aplikacji hostingowej.
Możliwość rozładowania zestawu
Artykuł How to use and debug assembly unloadability in .NET (Jak używać i debugować możliwość zwolnienia zestawu na platformie .NET ) to samouczek krok po kroku. Pokazuje on, jak załadować aplikację .NET, wykonać ją, a następnie zwolnić ją. Artykuł zawiera również porady dotyczące debugowania.
Zbieranie szczegółowych informacji o ładowaniu zestawu
W artykule Zbieranie szczegółowych informacji o ładowaniu zestawu opisano sposób zbierania szczegółowych informacji o ładowaniu zestawu zarządzanego w środowisku uruchomieniowym. Używa narzędzia dotnet-trace do przechwytywania zdarzeń modułu ładującego zestawów w ślad uruchomiony proces.