Programming with Application Domains and Assemblies
Note
This article is specific to .NET Framework. It doesn't apply to newer implementations of .NET, including .NET 6 and later versions.
Hosts such as ASP.NET and the Windows shell load the common language runtime into a process, create an application domain in that process, and then load and execute user code in that application domain when running a .NET Framework application. In most cases, you do not have to worry about creating application domains and loading assemblies into them because the runtime host performs those tasks.
However, if you're creating an application that will host the common language runtime, creating tools or code you want to unload programmatically, or creating pluggable components that can be unloaded and reloaded on the fly, you will be creating your own application domains. Even if you are not creating a runtime host, this section provides important information on how to work with application domains and assemblies loaded in these application domains.
In This Section
Using Application Domains
Provides examples of creating, configuring, and using application domains.
Programming with Assemblies
Describes how to create, sign, and set attributes on assemblies.
Related Sections
Emitting Dynamic Methods and Assemblies
Describes how to create dynamic assemblies.
Assemblies in .NET
Provides a conceptual overview of assemblies.
Application Domains
Provides a conceptual overview of application domains.
Reflection Overview
Describes how to use the Reflection class to obtain information about an assembly.