Assemblies
In the applications that you build within the .NET Framework, assemblies will always play an important role. Assemblies can be thought of as the building blocks of your applications.
Without an associated assembly, code will not be able to compile from IL. When you are usingthe JIT compiler to compile your code from managed code to machine code, the JIT compiler will look for the IL code that is stored in a portable executable (PE) file along with the associated assembly manifest.
Every time you build a Web Form or Windows Form application in .NET, you are actually building an assembly. Every one of these applications will contain at least one assembly.
As in the Windows DNA world where DLLs and EXEs are the building blocks of applications, in the .NET world, it is the assembly that is the used as the foundation of applications.
In the world of Windows DNA and COM, there was a situation that was referred to as DLL Hell. COM components were generally designed so that there was only one version of that COM component on a machine at any given time. This was because the COM specification did not provide for the inclusion of dependency information in a component's type definition. When the developer had to make some changes to the COM component, this new component was introduced and, in many cases, broke applications.
With .NET, it is now possible to have multiple versions of components, or assemblies, running on the same server side by side. An application will always look for the assembly that built it.
When an application is started in .NET, the application will look for an assembly in the
installation folder. Assemblies that are stored in a local installation folder are referred to as
private assemblies. If the application cannot find the assembly within the installation folder,
the application will turn to the Global Assembly Cache (GAC) for the assembly.
The GAC is a place where you can store assemblies that you want to share across applications.
You can find the assemblies that are stored in the GAC in the WINNT\ASSEMBLY folder in
your local disk drive.
In the applications that you build within the .NET Framework, assemblies will always play an important role. Assemblies can be thought of as the building blocks of your applications.
Without an associated assembly, code will not be able to compile from IL. When you are usingthe JIT compiler to compile your code from managed code to machine code, the JIT compiler will look for the IL code that is stored in a portable executable (PE) file along with the associated assembly manifest.
Every time you build a Web Form or Windows Form application in .NET, you are actually building an assembly. Every one of these applications will contain at least one assembly.
As in the Windows DNA world where DLLs and EXEs are the building blocks of applications, in the .NET world, it is the assembly that is the used as the foundation of applications.
In the world of Windows DNA and COM, there was a situation that was referred to as DLL Hell. COM components were generally designed so that there was only one version of that COM component on a machine at any given time. This was because the COM specification did not provide for the inclusion of dependency information in a component's type definition. When the developer had to make some changes to the COM component, this new component was introduced and, in many cases, broke applications.
With .NET, it is now possible to have multiple versions of components, or assemblies, running on the same server side by side. An application will always look for the assembly that built it.
When an application is started in .NET, the application will look for an assembly in the
installation folder. Assemblies that are stored in a local installation folder are referred to as
private assemblies. If the application cannot find the assembly within the installation folder,
the application will turn to the Global Assembly Cache (GAC) for the assembly.
The GAC is a place where you can store assemblies that you want to share across applications.
You can find the assemblies that are stored in the GAC in the WINNT\ASSEMBLY folder in
your local disk drive.
No comments:
Post a Comment