Partilhar via


Como: Carregar e descarregar montagens

Os assemblies referenciados pelo seu programa serão carregados automaticamente pelo common language runtime, mas também é possível carregar dinamicamente assemblies específicos no domínio do aplicativo atual. Para obter mais informações, consulte Como carregar assemblies em um domínio de aplicativo.

No .NET Framework, não há como descarregar um assembly individual sem descarregar todos os domínios de aplicativo que o contêm. Mesmo que o assembly saia do escopo, o arquivo de assembly real permanecerá carregado até que todos os domínios de aplicativo que o contêm sejam descarregados. No .NET Core, a System.Runtime.Loader.AssemblyLoadContext classe lida com o descarregamento de assemblies. Para obter mais informações, consulte Como usar e depurar a capacidade de descarregamento de assembly no .NET Core.

Carregar e descarregar conjuntos

Para carregar um assembly em um domínio de aplicativo, use um dos vários métodos de carregamento contidos nas classes AppDomain e Assembly. Para obter mais informações, consulte Como carregar assemblies em um domínio de aplicativo. Observe que o .NET Core oferece suporte a apenas um único domínio de aplicativo.

Para descarregar um assembly no .NET Framework, você deve descarregar todos os domínios de aplicativo que o contêm. Para descarregar um domínio de aplicativo, use o AppDomain.Unload método. Para obter mais informações, consulte Como descarregar um domínio de aplicativo.

Se você quiser descarregar alguns assemblies, mas não outros em um aplicativo .NET Framework, considere criar um novo domínio de aplicativo, executar o código dentro desse domínio e, em seguida, descarregar esse domínio de aplicativo. Para obter mais informações, consulte Como descarregar um domínio de aplicativo.

Consulte também